PERF/REGR: restore IntervalIndex._intersection_non_unique
- [ ] xref #42240
- [ ] tests added / passed
- [ ] Ensure all linting tests pass, see [here](https://pandas.pydata.org/pandas-docs/dev/development/contributing.html#code-standards) for how to run them
- [ ] whatsnew entry

Reverts the rest of #41929
i've milestoned 1.3 and hopefully the backport will be straightforward @jbrockmendel have you ran the asvs for this change? no i havent ok. i'm winding down for the day.

this targets `index_object.IntervalIndexMethod.time_intersection_both_duplicate(1000)`?

should the asv be run before merging to check or confident this fixes?
 > should the asv be run before merging to check or confident this fixes?

im moderately confident, but my intuition on this doesn't have a great track record over the last few days let's merge and just do the rleease tomorrow. this is the point of point releases, we can always fix things. @meeseeksdev backport 1.3.x Something went wrong ... Please have  a look at my logs. > im moderately confident, but my intuition on this doesn't have a great track record over the last few days

looking good... https://simonjayhawkins.github.io/fantastic-dollop/#index_object.IntervalIndexMethod.time_intersection_both_duplicate?branch=1.3.x&branch=1.2.x&commits=5940c9cf&p-param1=1000