Программно? Решение на PowerShell подойдет? Есть так же встроенная утилита - tzutil.exe:
tzutil /l - покажет список доступных часовых поясов.
tzutil /g - покажет текущий;
tzutil /s "имя_пояса" - позволит установить новый.
# прошу прощения, проморгал, что решение нужно на C#.