Добрый!
Дата (в т.ч. и с временем) хранится в UTC формате. Поэтому формат 14.02.2008 20:00:00 вместо 15.02.2008 00:00:00 вполне понятен. В Москве 4ч разница с Гринвичем.
Почему у Вас по разному хранится, не могу представить. Разве что это остатки от предыдущего способа отображения (со временем). Хотя сомневаюсь...
Предлагаю прибавлять не 1 день, а разницу с Гринвичем, в Вашем случае 4ч

Вот
статья как работать с Датой в javascript.