This happens when you are running Docker Desktop in Linux Containers mode.
Docker Desktop either runs Linux Containers or Windows Containers. It can't run both.
You have to switch it to Windows Containers mode before trying to pull Windows based images. To do this
Switch to Windows Containers
You may be asked to add Windows features like Containers, HyperV, WSL as the requirements are different when you switch to Windows containers.
I also had to enable this feature via Powershell (admin)
Enable-WindowsOptionalFeature -Online -FeatureName $("Microsoft-Hyper-V", "Containers") -All