What happens when a country changes its DST schedule? For example, Israel has just lengthened its Daylight Savings Time by a month. It seems like no firmware update was issued by Google for this. How does Android update its timezones and times?
Time is updated using specific protocols. The information exchanged might include a DST flag (at least I would have done that if I'd made the specs), together with a TZ and the unix time stamp. But given that not even NTP does that (neither TZ nor DST), it might be doubtful.
This standard allows the network to "transfer its current identity, universal time, DST and LTZ"1 but each is optional, and support across RAN vendor and operator varies. This presents a problem for device manufactures which are required to maintain a complex timezone database, rather than rely on the network operator.
From this we can learn: It might be this information is provided via NITZ, as the specs allow for it. But network providers also might include additional sources to ensure this.
One other point is that not all carriers support NITZ (see Wikipedia). I'm not sure what they use instead (a good guess might be the Reference Broadcast Time Synchronization); but different carriers might use different methods. So to me it looks like there's no "general answer" − as you can also see in this discussion: Sometimes (or rather "some places") it works, in others not.
If you want to dig deeper: