Hola Flashera:
Los objetos Date() tienen aparte de los "dia/meses/año" los atributos hora, minutos y segundos (y también milisegundos), que al generar las variables de ese tipo sin esos valores, se inicializan automáticamente (supongo que a cero)...
Lo que pienso que funcionaría bien es creando el objeto con las horas:minutos:segundos, o a la variable now ponerl a cero esos valores:
caso 1:
var epoch = new Date(1970, 1, 1);
var now = new Date();
now.setHours(0);
now.setMinites(0);
now.setSeconds(0);
caso 2:
var now = new Date();
var epoch = new Date(1970, 1, 1, now.getHours(), now.getMinutes(), now.getSeconds());
Pruébalo y nos cuentas.
Saludos