The weirdest thing happens to date calculation because of what you see below; notice that adding one month to Oct 31st takes it to December! This can't be? I have the same issue on Ubuntu 16 and 20. This issue also causes my shell script to give the wrong date, so it's not just the cron scheduler.
root@ubuntugc:/home/miuser# date -d "20210930+1 month" +%Y-%m-%d 2021-10-30 root@ubuntugc:/home/miuser# date -d "20211030+1 month" +%Y-%m-%d 2021-11-30 root@ubuntugc:/home/miuser# date -d "20211031+1 month" +%Y-%m-%d 2021-12-01