Andy, it seems to me that you need an OS that does things the way you want it to, and Ubuntu MATE isn't it. That's OK. One of the great things about LINUX is that you can choose from hundreds of variants. Trying multiples (and re-using multiple thumb drives) is how I wound up with Ubuntu MATE. I used CentOS for years before switching.
Some of the variants I tried (and liked) before choosing Ubuntu MATE were
Puppy Linux (still using it on a 32-bit Intel Atom-based netbook)
Bodhi
Lite (very nice for those who don't care to muck around)
Mint
MX Linux
elementary
easyOS
antiX
Peppermint
and more. If you're curious, Distrowatch is the only site you'll need to learn more. I use it as an "anchor" for researching and downloading disk images, since Linux is free! All you have to invest is your time.
As a follow up, I found it easiest to download image files (.iso) and use a tool (balenaEtcher) to create bootable USB thumb drives which I could then use in "live" mode (without installing anything) to "test drive" a distro. If I liked it well enough, I could then install directly from the USB drive onto my computer. Most distros fit onto a 4Gb thumb drive. I bought a 10-pack for this purpose.
There is a distro like that. It helps with the basics and you do the rest. It is way beyond my capabilities but might work for others. Linux From Scratch. You make it to be what you want.
I don't know the particulars of your script, but it kinda sounds like the solution you created didn't work correctly. Hopefully you were working within your userland and not in system wide locations?
That said, if you want to configure things and not worry about updates potentially messing with your configuration, I highly recommend checking out Slackware. Slack doesn't do any automated package management out the gate, so you can configure it precisely to your expectations. You can also build the latest version of MATE in Slack if that's something that interests you, but Slackware will never do anything you did not expect. That is its hallmark virtue.
Is there any chance that you placed the "missing icons" in the system folders without realizing it?
Is there any chance that the icons are in a differently named folder?
The system would not just "blow away" any custom icon folders/files under the ${HOME}, so there must be something that you did not realize you were doing (command scope wider than your conception of the command format would be applied to)!
If you were handling your icons using scripts, you need to review your scripts to re-confirm that they are doing what you really think they are doing. I know I've made that mistake, thankfully only a few rare instances I can count on my one hand.