In general, Saxon is not recognizing a negative zero
duration as equivalent to a positive zero duration. For
example "-PT0S" compares not equal to "PT0S", and is
displayed with a minus sign when converted to a string.
Although none of the specs are 100% explicit that -PT0S
and PT0S represent the same duration value, it's the
only sensible interpretation.