Basically, it comes down to having very little money, if any, to fund these tasks and most of the work is done by volunteers. It is much easier and faster to work with the local environment than manage kernel portability issues between different BSDs and even Linux.
The cool thing is that anyone is free to help with the project and port things if they choose. It is truly an issue of funding and finding folks willing to do the work (and maintain it).
It is a lot of work and specialized knowledge across different kernel domains.
From the end user side things like libvirt have done a lot to make the interface to these systems consistent, and so I really don't feel a ton of pain moving between virtualization solutions anymore as an end user compared to having to deal with xen/qemu/vmware/virtualbox/hyper-v incantations. If I'm just trying to run a workload I don't care about NVMM, unless it has a particular feature that I need for network emulation like say RapidIO, Fibre Channel or Infiniband as an emulated link layer.
What you are saying may be true for OpenBSD/vmm, but Bhyve has been ported to Illumos, and by extension, SmartOS & OmniOS. Apple MacOS has Xhyve, which was inspired by and shares some code with FreeBSD Bhyve.