Hi Oliver,
No, you are using this service correctly. The difference is caused by the implementation of reports versus the SOAP api. They read from different backend systems with different filter in place.
When working with dates and times, I cannot recommend the java library JodaTime highly enough. The DateTimeZone object has multiple factory methods to load IDs in a variety of formats:
Of note is the ability to translate from offset hours (as a signed integer) to a timezone.
It even accepts a java DateTime object, which you can get for the long string, like so:
TimeZone tz = TimeZone.getTimeZone("America/Los_Angeles");
We recommend using JodaTime to deal with the intricacies of time zones.
- Kevin Winter
AdWords API Team