They assume that HTML is a closed system with no new tags, and don't account for custom elements or new tags. It doesn't even have support for existing tags like <track>, <b>, or <i> (<i> is used by some systems now for icons). It doesn't appear to have a way to emit comments.
We have the ability to embed real HTML strings, with expressions, directly into JS, which means that the rendering library doesn't have to have any knowledge or opinion of what the tags are.
This is what Lit does with lit-html templates. The example in the Van readme would be:
const Hello = () => html`
<div>
<p>Hello</p>
<ul>
<li>World</li>
<li><a href="https://vanjs.org/">VanJS</a></li>
</ul>
</div>
`;
Such template strings can contain any HTML - any tag, comment, attribute, entities, SVG, etc.