Blazor is three components
A c# engine that builds a RazorTree structure. It uses async messages to communicate with the rendering component.
A JavaScript and browser rendering component. This component renders the RazorTree into html. It also collects UI events and sends to the Blazor engine.
A host(s) for the two engines. When WASM the browser hosts and supplies communication between the two components. When Blazor server is used, the server hosts the blazor engine, the browser the JavaScript engine, and signal/r is used for communication. When maui hosts, it hosts the blazor engine, the webkit view hosts the JavaScript and displays the rendered html.
Blazor is designed to call JavaScript to render the html (as WASM does not have access to the dom). You could replace webkit with another JavaScript host and JavaScript rendering engine, but the JavaScript would need to render the RazorTree to something.