Como você está sempre usando o Tempo Universal, não consigo ver qual vantagem DateTimeOffset lhe dá sobre DateTime. Você pode usar DateTime.UtcNow, que tem a mesma precisão que DateTime do Sql Server.
Alternativamente, como você está usando o Sql Server 2008, você pode armazenar seu campo como um DateTime2 no banco de dados:isso tem a precisão adicional que você precisa.