When the domain controller holding the PDC Emulator FSMO role is a virtual machine on a Hyper-V host and you have the Hyper-V Time Synchronization Service enabled in the guest OS, the host will sync its time with the domain controller running in the guest OS. This can eventually cause them to diverge (skew) however, for example if you restore the virtual machine from a saved state.
The workaround involves two steps. First, use Hyper-V Manager to disable the Hyper-V Time Synchronization Service in the Integration Services for the virtual machine. Second, run the following REG ADD command at a command prompt:
HKLM\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\VMICTimeProvider /v Enabled /t reg_dword /d 0
I've been informed however that a better solution is simply to ensure that the host syncs its time with a physical domain controller on your network.
Mitch is a ten-time recipient of the Microsoft Most Valuable Professional (MVP) award and a widely recognized expert on Windows Server and cloud computing technologies. For more information see http://www.mtit.com.