Hi Ian,
This is common with virtualised environments and is due to the hardware clock skewing, resulting in the time drift. The guest VM relies on the timer ticks value being consistent, but this varies with CPU power saving technologies in today's systems, causing the number of cycles to vary. Do ensure the host server is configured to the use the same time server as all other devices on the network. Typical environments would use the primary AD (physical server) as the time server and this would use your ISP for time updates.