I’ve also been playing with many other USB DACs on many different hosts like various RPi, macbooks, NUC and a Sparky board. The key issue is that the host hardware you connect it to (be it a Stream Box, a RPi, Sparky, Macbook, etc…) needs to be able to work with it. Any audio system (can be USB, a HAT, PCI board or even FW) that is recognised by the host is accessible to Roon that runs on that host as well.
You are right, one should not assume any old USB DAC will work, but this is not so much caused by Roon as it is caused by the fact that the host OS+hardware should be compatible.
Welcome to the forum!
First of all: not being Roon-tested or Roon-ready doesn’t mean you can’t use it with Roon. Yes, you will have some inconveniences of a Puccini incorrectly being identified as a Paganini or the fact that you cannot use the Puccini volume control.
I would not expect DCS to invest in a 2 generations old product like Puccini to optimize it for Roon. But who am I to speak on their behalf…
With regard to your question 3:
Any stable hardware that runs Roon and can connect to the uClock USB will be an option.
I would personally not connect the uClock to a QNAP NAS because 1.) it is mechanically noisy (you don’t want that in your listening room) and 2.) the USB connections are electrically noisy.
I would much rather recommend to use a Nucleus (although I’m not sure it is compatible with the uClock) or an Innuos (I only have tested this with the Scarlatti USB). Or, of you are a bit of a DIY person like me, use a Sparky + USBridge. This last option was the best sounding in my system and worked with both the uClock and the Scarlatti Clock.
I’ve upgraded to a Rossini Player in the meanwhile and have full Roon integration in one box now. Still, for the sake of this discussion, I’ve connected the Rossini to my USBridge and it worked perfectly fine as well. But I realise that this scenario is not relevant for you.