BUG: Index constructor silently ignoring dtype
- [x] closes #21311
- [x] 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
- [x] whatsnew entry

We can go a step further and re-use sanitize_array for the `dtype is None` case, but that ever-so-slightly changes our datetime-inference behavior, so we'd need to either deprecate or call it a bugfix.
very nice!