Ive been using Docker Desktop with WSL2 and vscode for the past couple of weeks and its been pretty seamless so far. The performance has been great (on a ryzen 3600x PC and on my surface laptop 3), and was really easy to set up. I'm forced to use a Mac at work, and have generally dual booted to linux at home, but havent needed to so far.
I was using Fedora on it for daily software development for a couple of months. Almost everything was working perfectly. I ended up switching to a Dell XPS 13 2015 though. The main issue I had with linux on the SP3 was that I couldn't enter the hard drive password without an external keyboard on boot. (Lots of tips on /r/SurfaceLinux)