Кажется, что функция JavaScript Date() может возвращать только локальные даты и время. В любом случае, чтобы получить время для определенного часового пояса, например, GMT-9?
Объединив @Esailija и @D3mon-1stVFW, я понял: вам нужно иметь два смещения по часовой стрелке, по одному для локального времени и по одному для целевого времени, вот рабочий код:
var today = new Date();
var localoffset = -(today.getTimezoneOffset()/60);
var destoffset = -4;
var offset = destoffset-localoffset;
var d = new Date( new Date().getTime() + offset * 3600 * 1000)
Пример: http://jsfiddle.net/BBzyN/3/