Потому что ваше время в секундах. Javascript требует, чтобы он был в миллисекундах с эпохи. Умножьте его на 1000, и это должно быть то, что вы хотите.
//time in seconds
var timeInSeconds = ~(new Date).getTime();
//invalid time
console.log(new Date(timeInSeconds));
//valid time
console.log(new Date(timeInSeconds*1000));