Nope, because it stays on the numeric day of the month, and if it is the 31st it actually moves to the 1st.
I don’t get this monthly repeating mode anyways, why again was it split off from the other repetitions? Because it is split off and allows no customization you cannot even say every 2 months, or even less so 1 year.
That should depend on the month where it repeats, so that if you’re due to repeat on the 31st and the current month does not have a 31st, it will flip over to the 1st. Not sure how that could be solved? Maybe use the last day of the month when the current date is not available? What then to do in the next month?
It’s meant for things like “on the first of every month”. You can’t do that if you only repeat by time intervals.
It was introduced as kind of a workaround, it does not solve the problem fully, as you mentioned. The goal is to rework how the repeating modes work, so that we can model repeating intervals similar to caldav.