REGR: DataFrame.shift(axis=1) raises TypeError when columns is CategoricalIndex
A regression since 1.1:

```python
>>> ci = pd.CategoricalIndex(["a", "b"])
>>> df = pd.DataFrame([[1, 2], [3, 4]], index=ci, columns=ci)
>>> df.shift(axis=0)  # ok
     a    b
a  NaN  NaN
b  1.0  2.0
>>> df.shift(axis=1)  # not ok, worked in v1.1
TypeError: 'fill_value=0' is not present in this Categorical's categories
```
