REF: _try_cast; go through fastpath more often
- [x] closes #28145
- [ ] tests added / passed
- [x] 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

can you post benchmark results with `-b ctors`

```
       before           after         ratio
     [6dff995e]       [29848ac6]
     <master>         <ref-cast>
+     2.67±0.05ms       2.74±0.1ms     1.03  ctors.SeriesConstructors.time_series_constructor(<function list_of_tuples at 0x11c088670>, True, 'int')
+     2.66±0.05ms      2.69±0.09ms     1.01  ctors.SeriesConstructors.time_series_constructor(<function list_of_tuples_with_none at 0x11c088820>, True, 'float')
-     2.63±0.05ms      2.60±0.04ms     0.99  ctors.SeriesConstructors.time_series_constructor(<function list_of_lists_with_none at 0x11c0888b0>, True, 'float')
-     2.62±0.05ms      2.59±0.05ms     0.99  ctors.SeriesConstructors.time_series_constructor(<function list_of_lists_with_none at 0x11c0888b0>, False, 'float')
-     2.63±0.03ms      2.59±0.04ms     0.99  ctors.SeriesConstructors.time_series_constructor(<function list_of_lists at 0x11c088790>, False, 'float')
-     2.64±0.05ms      2.60±0.04ms     0.98  ctors.SeriesConstructors.time_series_constructor(<function list_of_lists_with_none at 0x11c0888b0>, False, 'int')
-     2.66±0.07ms      2.61±0.04ms     0.98  ctors.SeriesConstructors.time_series_constructor(<function list_of_lists_with_none at 0x11c0888b0>, True, 'int')
-     2.65±0.07ms      2.59±0.04ms     0.98  ctors.SeriesConstructors.time_series_constructor(<function list_of_lists at 0x11c088790>, True, 'float')
-      3.51±0.1ms      3.38±0.08ms     0.96  ctors.SeriesConstructors.time_series_constructor(<function gen_of_str at 0x11c088550>, False, 'int')
-     2.73±0.08ms      2.62±0.04ms     0.96  ctors.SeriesConstructors.time_series_constructor(<function list_of_tuples_with_none at 0x11c088820>, True, 'int')
-        591±30μs         565±20μs     0.96  ctors.SeriesConstructors.time_series_constructor(<function list_of_str at 0x11c0884c0>, True, 'float')
-      2.77±0.1ms      2.65±0.06ms     0.96  ctors.SeriesConstructors.time_series_constructor(<function list_of_tuples at 0x11c088670>, False, 'int')
-      50.5±0.8μs         45.4±2μs     0.90  ctors.SeriesConstructors.time_series_constructor(<function no_change at 0x11c088430>, True, 'float')
-        43.0±2μs         37.4±2μs     0.87  ctors.SeriesConstructors.time_series_constructor(<function no_change at 0x11c088430>, False, 'float')
-      52.9±0.6μs         44.5±2μs     0.84  ctors.SeriesConstructors.time_series_constructor(<function no_change at 0x11c088430>, True, 'int')
-        45.5±1μs       36.6±0.2μs     0.81  ctors.SeriesConstructors.time_series_constructor(<function no_change at 0x11c088430>, False, 'int')

```