ESX clock time and keeping vms in sync as regards their time can be problemmatic. The diversity of ways of maintaining time and the differences betwen OS and even individual virtual machines can make it awkward to figure out where the time drift issue may lie. Some things to look out for are dead ntp servers, esx servers pointing at themselves for time and dns configurations that prevent esx from reaching the ntp server to get time synched. Once you have the time correctly synching you should be able to see that in the VMs using the server for correct time via vmware tools. If you need an reasonably accurate time source to check against – the Virgin Media speaking clock is on 123 from a Virgin landline.
On Windows machines – that are getting time from DC use
NET TIME SERVERNAME /SET /YES
to get the time updated