I think from what I've read that this is the case, but I've read some other info that's made it less clear to me.
On the second part of the question regarding container engines, I'm pretty sure that may also be correct, and it kinda makes me wonder a little about risks of engine lock-in, but that may be a little out of scope.
In my experience docker will run Linux images everywhere. I believe it uses WSL on windows and a VM on macs.
So it entirely depends on what your engine supports.
I believe there are open standards for the binary format of images so switching engines may be possible. But again depends how the containers are built.