Someone could definitely build another "last" cross platform application development toolkit with WebAssembly right now, and have it actually work reasonably well, and be slightly more desirable than flutter (and it could absolute use flutter/skia underneath) since you could build without the Dart (for those who don't necessarily prefer Dart).
To over-simplify, the Component Model manages language interop, and WIT constrains the boundaries with interfaces.
IMO the problem here is defining a 90% solution for most window, tab, button, etc management, then building embeddings in QT, Flutter/Skia, and other lower level engines. Getting a good cross-platform way of doing data passing, triggering re-renders, serializing window state is probably the meat of the interesting work.
On top of that, you really need great UX. This is normally where projects fall short -- why should I use this solution instead of something like Tauri[2] which is excellent or Electron?
[0]: https://github.com/WebAssembly/component-model/blob/main/des...
[1]: https://github.com/WebAssembly/component-model/blob/main/des...
[2]: https://tauri.app/
https://www.linkedin.com/pulse/what-ctscls-fcl-bcl-crl-net-f...