API page: http://api.drupal.org/api/drupal/includes%21common.inc/function/format_d...

When you call format_date with custom format set as: 'U' (acceptable to date()) you will get wrong result because of the: "$timestamp += $timezone;" line.

I think either 'U' custom format should be forbidden or taken into account...