Fix ExpandDims axis handling bug. (#26805)
### Description
<!-- Describe your changes. -->
Fix some issues with axis handling of ExpandDims.
- It was improperly getting the rank with `TensorShape::Size()` which
actually gets the number of elements.
- The range of valid axis values is actually `[-(rank+1), rank]`.
### Motivation and Context
<!-- - Why is this change required? What problem does it solve?
- If it fixes an open issue, please link to the issue here. -->
Fix crash on out-of-range axis values. Now it will error out instead.