DateTime can take a datetime instance, and pays attention to its timezone
Fix StringToDate invocation

'%z' in the format spec is invalid. This was raising a ValueError,
which was being caught. Pass format=None, so dateutil.parser.parse
is called. This understand the format we have here.
Test against the instance timezone