Also in non-all-day events, the begin & end times coming from e_cal_client_generate_instances_sync() are already adjusted from the entry's timezone to UTC. So I don't think there's any path where we need look at the ECalComponent's dtstart/dtend times' timezones.
So after testing use cases a bit further it looks like EDS is sees all-day events like this, and the timezone is irrelevant:
> BEGIN:VEVENT 5149Z-3681- 1000-3631- 132@sita 20121026T094847 Z VALUE=DATE: 20121031 DATE:20121101 20121026T095207 Z 20121026T101948 Z
> UID:20121026T09
> DTSTAMP:
> DTSTART;
> DTEND;VALUE=
> TRANSP:TRANSPARENT
> SEQUENCE:3
> SUMMARY:Halloween
> CLASS:PUBLIC
> CREATED:
> LAST-MODIFIED:
> END:VEVENT
Also in non-all-day events, the begin & end times coming from e_cal_client_ generate_ instances_ sync() are already adjusted from the entry's timezone to UTC. So I don't think there's any path where we need look at the ECalComponent's dtstart/dtend times' timezones.