Server 2008 is the obvious choice being closer to XP.
All this update does is update tzres.dll (Time Zone Resources), but that file doesn't exist in XP. What I see in 2000/XP is tzchange.dll and tzchange.exe, which can be used to modify time zones, and OS updates seem to use this tool to modify them as well (9x uses timezone.dll and timezone.exe). We should compare with XP timezone updates. If done correctly, we will have a Server 2008 update backported to XP, 2000 and 9x! (XP's DST update was backported to 9x)
Thing is that these omniglot NT6 updates are confusing. Anyone know of a tool to properly extract them on my NT5 machine?
Forget some of that noise, actually. All we need to do is write an INF specifying the timezone changes (as listed in the support article), I believe, in the same format as an official XP timezone update. No need to go into 2008 updates.
OK, so the changes can be summed up as:
Brazil no longer has DST, affects E. South America Standard Time and Central Brazilian Standard Time
Morocco Standard Time fixed, changed from UTC +02 to UTC +01
Now how to express that in hex...
The reg entries that would need to be changed would be in HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones, specifically Central Brazilian Standard Time and E. South America Standard Time. Under each is a "Dynamic DST" key with listings of DST dates (in hex) from 2004 to 2040, which means presumably Windows XP will stop changing from ST to DT after 2040. I think we can just delete the Dynamic DST entry for Central Brazillian and E. SA time because Saskatchewan time has no DST and no such entry, and simply modify the main key for Morocco Standard Time (which is somehow, still UTC 0 on my XP).