La fecha / hora actual de Java muestra 1 hora por delante de la hora original

Cuando intento imprimir la fecha y la hora actuales utilizando la instancia de Calender, el resultado que obtengo es de 1 hora por delante de la hora real.

Estoy trabajando en una máquina remota que funciona con la zona horaria EST. A continuación es lo que he intentado, pero nada funciona.

Calendar cal = Calendar.getInstance(TimeZone.getDefault());
Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("EST"));
Calendar cal = Calendar.getInstance(Locale.ENGLISH);

System.out.println("Current Date & Time: " +calendar.getTime());

o/p:
Time: Sat Dec 28 11:55:10 UTC 2013

But expected o/p: 
Time: Sat Dec 28 10:55:10 UTC 2013

Todos los 3 tipos dan el mismo resultado. No pude entender lo que me perdí para obtener la fecha y la hora exactas. ¿Está este problema relacionado con el horario de verano?

¿Podría alguien ayudarme a superar este problema? Gracias por adelantado.

Respuestas a la pregunta(2)

Su respuesta a la pregunta