Ludovic, as the NSDate is a only "a moment in a timeline", when you do NSLog to a NSDate, it prints it with the timezone of Greenwich time (that is the +0000 after the time) - and as you didn't define any time zone to your NSDateComponents
comps
object, it just converted to a NSDate using GMT +0, and you are probably in a GMT +2 zone.
In order to fix this, I would suggest you to set the time zone of your NSDateComponents to object.
[comps setTimeZone:[NSTimeZone localTimeZone]];
or set the desired time zone, in case it's not the local.