There are several problems with it, but none of them are the ones mentioned by Apple and Google.
The main one is that - outside of Europe and North America - not many operators are signed up to use it. This is slowly being addressed.
A secondary issue is that most of the operators who are signed up only use blocklists for device stolen in their own country - so if you export the stolen device, it works again.
A third is that while the IMEI is usually stored in write-once memory on the device, it has to pass through layers of rather less secure software before it reaches the network. Intercepting and changing the IMEI is illegal in the UK. But so is stealing the phone.
And so on....
That said, it is a relatively simple way of making life more complicated for purveyors of stolen phones. It's far from watertight though.