What timezone are you in? What should the offset be?
How come the "now" is alway 5 hours ahead of my time?
Depends how your Calendar is inilialized (assuming the cal in your code refers to a Calendar object?). It needs to be constructed with the GMT TimeZone. Assuming this and that the clock is set correctly on the machine you are running,
you should get the appropriate offset.