BUG: sorting a MultiIndex with pd.Period does not sort correctly when assigning new values inplace
This is a problem on pandas 1.0.5:

```python
import pandas as pd

s = pd.Series(
    {
        ("A", pd.Period("2021")): 20,
        ("A", pd.Period("2020")): 10,
    }
)

s.sort_index(level=1, sort_remaining=False)
# gives:
# A  2020    10
#    2021    20
# dtype: int64
# --> works!

s[("B", pd.Period("2019"))] = 15

s.sort_index(level=1, sort_remaining=False)
# gives:
# A  2020    10
#    2021    20
# B  2019    15
# dtype: int64
# --> wrong?

s.sort_index(level=1, sort_remaining=False, ascending=False)
# gives:
# B  2019    15
# A  2021    20
#    2020    10
# dtype: int64
# --> wrong?
```

#### Problem description

The problem seems to be that adding new periods is giving a wrong ordering of the periods in MultiIndex levels, so that sorting takes the wrong order to sort them.

If I do `s.index.levels[-1]` I can see the levels are ordered wrong - and when I do `s.index.levels.sort_values()` they are ordered correctly. So, it seems like internally the wrong ordering is somehow used?

Is this indeed a bug - are there ways I can help to fix it? If not, is there a work around for me to achieve what I need to achieve?

Thanks a lot,


Ron