I have a Surface Pro 2 running with the linux-surface kernel [0]. It feels like it has some rough edges - you have to decide between having pen support or having touch screen support, and suspend can be unreliable. These issues may be fixed now. Also, I encrypted my Windows partition, and now it requires the key each time to boot up, so I recommend against doing that.

Overall, I do agree that the hardware feels quite nice, and besides those issues I listed, the Linux experience is quite good. I was very happy to not be forced to use Windows.

[0] https://github.com/linux-surface/linux-surface