Each map in the rotation has a vote counter. Every mapchange, the new map's counter is reset to 0, all other counters are increased by 1.
When you vote for a map, you increase that map's counter by 5 (that number could have changed but it doesn't really matter).
You can see each maps counter when you type "maplist" in the console. So lets say this is the output with you on the jumpserver:
10 somemap1
5 somemap2
4 somemap3
...
0 currentmap
This could happen because the mapinfo of "somemap1" made the server not load it although it had the highest counter, still it got 1 vote per map change, so now it has collected 10 votes and is on top of the list.
Now you vote for somemap3, which increases its counter by 5, but the resulting count (9) is still below 10, so somemap1's counter is still higher and somemap1 will be loaded although you are the only player on the server and voted for map 3.
This issue has already been put on the feature vote list, see
http://dplogin.com/forums/index.php?topic=11204