VisualStudio2005Pro + XP SP2 (32bit) + MFCと言う環境です。
CTime::Format()等を使うと、4月以降時刻が1h進んだ状態の結果となります。
調べた所、環境変数にTZ(タイムゾーン)が指定されている場合に、夏時間のフラグの更新が行われず、TZ=JST-9であっても4月から夏時間の処理がされてしまいます。
具体的にはtzset.cの_tzset_nolock()で、夏時間フラグである_daylightを書き換えるコードが有りません。
皆様の環境では如何でしょうか?