Contrary to what you might think, Europe/London doesn't actually use Greenwich Mean Time. Not during this part of the year, anyway. If you want GMT, ask for TimeZone.getTimeZone("GMT") instead.
See
here for a similar discussion, and a solution that avoids using Date and DateFormat entirely, instead using simple math as Paul suggests.
[ October 02, 2007: Message edited by: Jim Yingst ]