keron, если вы указали правильную будущую дату в переменной newYear, то все работает как надо. Вот например, дата 13-е октября 22.30 записывается так:
var newYear = new Date("Oct,13,2008,22:30:00");
и если, как вы правильно сказали, вместо строки
document.getElementById("newyear").innerHTML = "C НОВЫМ ГОДОМ !!!";
указать
location.href = 'finish.php';
то при наступлении установленного времени произойдет переадресация, и, если не изменять данные времени, при последующем запуске скрипта снова произойдет переадресация, если же изменить данные времени (на будущее) и загрузить/обновить страницу со скриптом, то отобразится таймер, как и должно быть. Возможно, у вас просто кешируется страница или вы пытаетесь обновить не страницу со скриптом, а переадресованную страницу, т.е. finish.php.