Fix incorrect DST offset calculation

TimeZone's getOffset() takes milliseconds since the Unix Epoch as
its argument. In some cases, seconds were passed instead, leading to
incorrect DST calculations.