Possible issues:
- the server's time is not set correctly, test this by confirming that time in the UTC timezone is correct
- the timezonedb is outdated and the timezone in question has changed its DST rules in the meantime, update your PHP version and/or your timezonedb via PECL