BUG: fix construction of NonConsolidatableBlock with inconsistent ndim
- [x] closes #27785
- [ ] tests added / passed
- [x] passes `black pandas`
- [x] passes `git diff upstream/master -u -- "*.py" | flake8 --diff`
- [ ] whatsnew entry

cc @jbrockmendel  I tried once to require that ndim be passed and found that some of the downstream tests failed because e.g. pyarrow uses make_block directly > I tried once to require that ndim be passed

That's indeed another option to pass `self.ndim` to all calls to `self.make_block_same_class` (there are not too many of them I think), if you prefer.

> e.g. pyarrow uses make_block directly

But this is `self.make_block_same_class` which is probably OK to do? > But this is self.make_block_same_class which is probably OK to do?

Yah, looks like pyarrow is only calling the make_block function, not the methods. thanks @jorisvandenbossche 