I think the only way to handle historical data with DST is with a TallyCalendar Table, where you join dates against the it to get the Daylight Savingstime Offset.
In the US, DST changed; prior to 2007-01-01, it started on first Sunday in April thru the last sunday in October.
After that date, it was changed to start the second Sunday in March to the first Sunday in November.
If you need it, here's a link to the TallyCalendar scripts I use. it's got a lot of scripts and snippets related to adding US Holidays as well.
TallyCalendar_Complete_With_DST.txt
Something like this is so useful in so many places, it's one of those things you should have.
Lowell