Things do go missing all the time in schools unfortunately. Most of the time it's a combination of uniform that all looks the same, careless children and items not being well labelled enough (often they start off being named but labels wash out and parents don't notice).
We try so hard to keep belongings with children but it's so tricky. The mounds and mounds of stuff that end up unnamed and unclaimed in lost property speaks for itself.
That said, I also know that sadly some parents are opportunistic and will keep things that come home by accident.
One child in my class lost her jumper on the carpet in the last few mins of the day. We were pretty sure we knew which child had picked it up by accident (last couple of children left on the carpet) so the next day I asked his mum if he had come home with it by mistake. Mum said he hadn't.
A few weeks later I'm reuniting jumpers left strewn around the room by looking at names. I notice the name sticker on this particular boys jumper was peeling up at one side, revealing the name of the girl who it originally belonged to underneath.
Mum had actively stuck her kids name label over the top of a jumper that she clearly knew belonged to someone else.
I returned the jumper to the rightful owner and did let her know - "he's not coming home with a jumper today because that one actually belonged to someone else. They must have got muddled up somehow."
So it definitely happens, but I'm really not sure what schools can do to stop it. Most of the time we'd have no idea who had gone home with what (either by accident or on purpose) unless something like the above happens.
I'd advise naming the actual fabric of the items themselves if you can as well as the tags, and regularly check that the name is still clearly legible. Either stitch initials in or use sharpie on the inside of the collar/hem/back of the embroidered logo.
It should make things easier to reunite if lost, but also less of a target for opportunists if people can see it's clearly labelled.