I have version 0.4304 of DateTime (the latest). In that version, line 1651 is the return from _compare_overload:
in reply to Negation Error
_compare_overload is overloaded to <=> and cmp for DateTime objects. So a good place to start tracking this down would be any place you compare DateTime objects (recognizing that the offending call/comparison may be coming from some other module that you are using).
# note: $_->compare( $_ ) is an error when $_ is not a
# DateTime (such as the INFINITY value)
return $_ ? - $_->compare( $_ ) : $_->compare( $_ )