The reason is because something is using the TimeZoneInfo.StandardName instead of the TimeZoneInfo.ID. For all timezones these values are identical, with the exception of 3 timezones, and "Jerusalem Standard Time" is one of those 3.
See the following link for the full explanation: Why are some time zones returned by GetSystemTimeZones not found by FindSystemTimeZoneById?