Após algumas pesquisas, o problema ficou óbvio. Não foi realmente um problema com a própria máquina, mas com o hyper-v. Aparentemente, o Hyper-v é uma escolha terrível para a virtualização do Linux. É um problema conhecido que parece não ter uma correção além de apenas executar algo na máquina Linux convidada.
Eu uso esse cron job
0 * * * * /usr/sbin/ntpdate 192.168.1.x
obviamente, o 192.168.1.x representa o servidor ntp. Isso consertava meu tempo a cada hora. A documentação sobre como o hyper-v tem dificuldade em manter o tempo com os hóspedes do linux é notada em vários lugares, como aqui e aqui .