Have you searched before posting? This problem has appeared dozens of times in the past. It always has to do with textures that are invalidated.
There are several mistakes in your code: You don't check for errors when loading, you return a copy (instead of reference) in GetTexture(), and you needlessly allocate a dynamic texture, where you could directly load the texture inside the map. The destructor is also unnecessary, STL containers clean up properly on their own.