Já que você está pedindo soluções alternativas...
Basicamente, desconsideramos totalmente o fuso horário do servidor/banco de dados e trabalhamos inteiramente fora do UTC.
GetUtcDate()
por exemplo, para todas as colunas 'DateCreated'. Desde que nos comprometemos com essa abordagem, simplesmente não esbarramos em nenhum problema. Se você precisar armazenar o fuso horário junto com seus dados de data, poderá usar DateTimeOffset.
A única ressalva é que os planos de manutenção serão executados no horário do servidor. Isso não foi um problema porque normalizamos tudo para a hora local (que não é UTC e não é hora do servidor) em qualquer um de nossos programas de calendário.