I'm not sure that your ISO 8601 format is correct, Manfred.
I had to do quite a bit of reading about ISO 8601 to properly understand it, and the Z at the end means that the time is in UTC (which will only be true if you're in England), and the regional settings on your device are set correctly. If you're anywhere else, either the local date/time has to be adjusted to the equivalent date/time at the UTC meridian, or the offset from UTC has to appear at the end instead of the Z. In my case, the offset is currently +1100 since Australia (where I am) just changed to daylight saving time. It appears that you're in Germany, so your offset is +0200.
I originally thought that I would have to calculate and add or subtract the offset from local time to UTC to get ISO 8601 format, and I didn't like that idea - too much code to cater for every circumstance; moving the time back or forth up to 12 hours could result in a different day, or month, or even year!
Then I realised that ISO 8601 allows local time as long as you include the proper offset from UTC (instead of the Z). Luckily, the AHlocale library format string includes the offset, and even adjusts it for daylight savings.