Потому что стандартные функции/ФБ возвращают универсальное время.
Написать обертку с учетом часового пояса (SysTimeRtcGetTimezone) - не проблема.
Если по каким-то неочевидным причинам хочется получить локальное время именно вызовом одного POU - то см. библиотеку SysProcess - с помощью нее можно выполнить ту команду, которую вы вводите в командной строке, и получить тот же результат.




Ответить с цитированием