I think what Meta didn't realize (or maybe they did and ignored it) was that they were not pioneering the metaverse. They already existed on the platforms you just mentioned. I've never played Roblox or Second Life but I know kids and teens who live on Roblox and adults who live on Second Life. Those worlds _were_ their metaverses, and there was no reason to jump ship to another platform when they already had a digital life established. And meta just ended up making a shitty version of the metaverse anyway for the reason you mentioned.
It's not that the metaverse never took off — the popularity of Roblox and Second life (and other online social spaces) is proof that the metaverse was in demand. It's that Meta never gave people a reason to join their metaverse.
Note that I'm loosely defining the "metaverse" as any online world where the community is the point and people spend real money to "get ahead" in those worlds. Many MMOs can be metaverses in this sense. I've logged onto Final Fantasy XIV and saw people who logged on just to hang out at their friend's in-game house, not to play the game at all.