localtime() returns is_dst relative to current time,
independent of what the time passed to localtime is. So
after calling localtime(), is_dst will always be true no
matter that time I pass to localtime, if the current
time is in DST (and vice versa). This was a problem in
GUSI 1 too.