A full refresh of the storefront using the latest technologies or developer workflows can prove either impossible or incredibly challenging. That's why there are a lot of e.g. Magento projects stuck with huge JS bundles and unpleasant developer ergonomics. Ultimately there is the risk of needing to "replatform" - re-build the entire solution (front-end and server-side) on a different framework/platform, which is not a desirable situation to be put in.
That said, headless has its trade-offs. Building a storefront is not trivial. For many merchants it may not make sense. But for a certain class of use-cases it is a massive advantage.
It should also be noted that "headless e-commerce" has also graduated into buzzword territory, so you might get an inflated impression of the relative importance or use of it. Even Magento & Shopify are leaning into "headless" despite their clear interest in the monolithic model which is relied on by the majority of their marketplace offerings currently. Other platforms (e.g. Saleor, Sylius) which started off as non-headless have recently re-branded as headless.
Ultimately there is definitely hype in this area, but there is also genuine value too.
Source: I've been developing a headless e-comm framework for the past 3 years (vendure.io)