Fix+test DTI/TDI/PI add/sub with ndarray[datetime64/timedelta64]
Two notes for upcoming passes:

- the tests are pretty redundant, can be parametrized more tightly once they are all OK.
- catching ndarray[datetime64] separately from DatetimeIndex is kind of weird, but for the moment necesarry.  Once #19835 goes through and re-orders the catching, we'll be able to fix this.