Hopefully someone notices what is the cause for the problem I'm having.
For all other timezones such as "Europe/Helsinki" the offset calculation below returns correct values, but for some reason I get negative value for 'Etc/GMT+2' style timezones and vice versa (e.g. for Etc/GMT-2 I get positive value, 7200).
$dateTimeZone = new DateTimeZone('Etc/GMT+2');
echo $dateTimeZone->getOffset(new DateTime("now", new DateTimezone( 'UTC' )));
Expected: 7200 Result: -7200