Я не понимаю, зачем в вашей задаче множественные вызовы.
Предположим, нужно вызвать код 31 декабря 2014 года в 19 часов 12 минут:
setTimeout(function () {
// Что-то делаем
}, new Date(2014, 11, 31, 19, 12) - Date.now());
Если нужно поддерживать IE8, то вместо
Date.now() нужно писать
new Date().