Depending on how you create a Date object a different timestamp is returned.
var g1 = new Date(2011, 6, 18, 14, 50, 0);
var g2 = new Date("June 18, 2011 14:50:00");
alert(g1.getTime() + "\n" + g2.getTime());
// velue alerted is
1310997000000
1308405000000
Any thoughts?