BUG: get_level_values() on int level upcasts to Float64Index if needed
- [x] closes #17924
- [x] tests added / passed
- [x] passes `git diff master -u -- "*.py" | flake8 --diff`
- [x] whatsnew entry

Maybe the check could be more general... but I can't think of any case in which this is needed other than ``int`` -> ``float``.