New Zealand based iPhones aren't playing alarms at the correct time after the DST change during the weekend, according to iPhone New Zealand, "an alarm set for 5:55 am went off at 4:55 am instead, and there're a steady stream of users on Twitter experiencing the same issue.
The issue only seems to affect iPhones running iOS 4.1, and affects recurring alarms, even if the time is set correctly."
At first I thought that there must be a system-wide issue causing all alarms to go off an hour early, so to test the theory at 5:42am this morning I set an alarm for 6:43am expecting it to go off an hour early. 5:43am came and went with no alarm. I then set an alarm for 5:45am and it went off at the right time!
To be completely thorough I then tried the same setup again but this time with it set to repeat daily. This time, the alarm did go off an hour earlier than it was set for. So it seems we can narrow this issue down to repeating alarms only.