¿Cómo muestro una fecha con una zona horaria personalizada?

Digamos que tengo una cadena que representa una fecha que se ve así:

"Mié 08 de julio 17:08:48 GMT 2009"

Así que analizo esa cadena en un objeto de fecha como este:

DateFormat formatter = new SimpleDateFormat("EEE MMM dd HH:mm:ss ZZZ yyyy");
Date fromDate = (Date)formatter.parse(fromDateString);

Eso me da la fecha correcta del objeto. Ahora quiero mostrar esta fecha como un valor CDT.

He intentado muchas cosas y no puedo hacer que funcione correctamente. Debe haber un método simple utilizando la clase DateFormat para que esto funcione. ¿Algún consejo? Mi último intento fue este:

formatter.setTimeZone(toTimeZone);
String result = formatter.format(fromDate);

Respuestas a la pregunta(4)

Su respuesta a la pregunta