I believe that I have found a boundary error bug in the TimeZone.CurrentTimeZone.IsDaylightSavingTime method.
In the middle of the day on November 1, 2020, a call to TimeZone.CurrentTimeZone.IsDaylightSavingTime returns "True" even though DST ended at 2am on that date, & the correct value is "False".
The following code returns the wrong value:
If TimeZone.CurrentTimeZone.IsDaylightSavingTime(DateTime.Now.Date) Then
Return TimeZone.CurrentTimeZone.DaylightName
Else
Return TimeZone.CurrentTimeZone.StandardName
End If
However, the following code returns the correct value:
Dim dlt As DaylightTime = TimeZone.CurrentTimeZone.GetDaylightChanges(Now.Year)
If Now > dlt.Start And Now < dlt.End Then
Return TimeZone.CurrentTimeZone.DaylightName
Else
Return TimeZone.CurrentTimeZone.StandardName
End If