thats a C++ problem, not really SFML: when you use vector::insert, you reallocate all the vector in memory, what means you change the adress of all elements inside vector. so, each sprite will point to a place where there WAS a texture, but there is no more; except for the last sprite, because after it, there is no more inserts and no more reallocation.
try changing
playerIconVectorTexture.insert(playerIconVectorTexture.begin(), playerIconTexture);
for
playerIconVectorTexture.push_back(playerIconTexture);
push back USUALLY just adds a new element at the end of the vector, so it USUALLY doesn't change everything from place. the problem is, if the vector get too big, and there is no more space to grow, it will have to be reallocated anyway.
so i suggest using
playerIconVectorTexture.reserve(final_size)
before your loop starts (you could put it after the line "int playerIconNumber = 4;") if you know how big you final vector will be, to avoid that.