Short answer: make sure that gmap_markers.js has Drupal.gmap.iconpath pointing to the right folder where the marker icons are.
The long story:
Recently a client had a problem with drupal's gmap module. The markers wouldn't show. If you carefully moved the pointer around the map you would see it changing to a hand. One could even click on it. But the markers themselves were invisible.
I found the following page: http://drupal.org/node/1071244 which gives you a troubleshooting checklist for gmap. One of its steps is to make sure that you have access to gmap_markers.js. When I went to that page, I found that this is a configuration file. I saw that the images were supposed to be in a folder given by Drupal.gmap.iconpath, so I navigated through the directories in the file system to see if the images were there. They were not.
So the problem was that the file was moved to a public area, as it is required for it to work, but the value of Drupal.gmap.iconpath was never changed. So gmap was not able to find it. Changing the value to the appropriate drupal path fixed the problem.