@gofm not sure on windows but on linux the walltime is written in UTC to the CMOS when you shutdown or when you explicitly call hwclock command. the time written in the virtualized CMOS should contain an offset to the host clock so when the VM start it read the host time plus the offset. I suppose that if you disable the time sync in windows, set the time and reboot you will come up with a correct clock. I have no link to point you at, this is just a sum of things I remember but may be dated and/or wrong still if you can reboot your Windows VM could be worth testing.