As far as I understand Kubernetes kubelet talks to CRI (Container Runtime Interface) to run containers. So every Container runtime which is being used in Kubernetes should follow CRI implementation (https://www.ianlewis.org/en/container-runtimes-part-4-kubernetes-container-run). Docker Desktop version neither runs dockerd or containerd. It runs HyperKit for High-Level virtualization. Is it CRI compliant and could be used with Kubernetes?
Hyperkit is not CRI, it is hypervisor such as VirtualBox, which is used for Docker Desktop for Mac
. From Official docker documentation
Docker Desktop for Mac uses HyperKit instead of Virtual Box. Hyperkit is a lightweight macOS virtualization solution built on top of Hypervisor.framework in macOS 10.10 Yosemite and higher.
If you check this blog, it explains very well relationships between hypervisors and CRI.
As you can see the above image, Docker Container Engine (or containerd) is in top of Linux kernel, so it has nothing to do with Hypervisors. This is basically the main difference between VMs and Containers. If you have Linux kernel, you can run your CRI there.
So, Docker Desktop with Hyperkit, will work with Kubernetes
Hope it helps!