When we say "#WebComponents are just #HTML and the DOM", we don't mean that web components just render out HTML to the DOM.
That's what *every other component format does*. React, Solid, Svelte, Vue, etc. They are all JavaScript objects which sit *outside* the DOM, trying to peer into the DOM to make a change. Some do a better job of that than others.
That's not what web components do.
A custom element *is* a node within the DOM.
That gives it unique superpowers. Nothing else can top that.