Disagree on this completely; I've studied this space before and using something like Spree and Saleor seems like a world of trouble unless you are willing to commit significant, permanent, and highly specialized development resources to it.
Also, the ecosystems for many of the solutions you describe are quite fragmented and niche; I looked into Spree / Solidus / Saleor devs in my country and couldn't find one, whereas I could find thousands for other more popular (PHP-based) solutions. In my case this would mean that if you wanted to hire local Python / Rails devs, you would have to train every single one of them in the use of the framework.
Finally, I don't think these solutions are as fully featured as some of their competitors. In my comparison I saw that Spree had a plugin for bundled products but the code repo looked desolate, full of issues and left to rot for years, whereas many others had much better support baked in.
Due to all of the above, many medium-sized companies with typical use cases are going to be better served by a more out-of-the-box solution, rather than taking charge of a Rails or Python codebase that's going to grow wild with custom code.
As for Shopify, it's definitely not for mom and pops anymore - they are serving massive customers throught their Plus offering, and their move to an open and comprehensive API (with both REST and GraphQL) allows anyone to build highly customized headless apps around it.