собсно почему и было сказано про то, что нужно опираться только на разницу в таймзонах. Про нетривиальность пересчета -
getTimezoneOffset() в браузере дает разницу в минутах относительно GMT, сравниваешь ее с тем же значением от сервера и корректируешь соответственно показываемое время. Daysavings и т.п. учитываются при этом автоматически. Зачем тут где-то знать локальное время сервера?