i'm not very familiar with the internals of .net or powershell, but wouldn't that break parts of the interface like Set-Item, Remove-Item, New-Item?
the idea of providers generically is nice though. i currently use nushell, but its concept of $env.PWD is somewhat coupled to a file tree