+1 on reinventing the wheel! Just gave another go trying to use DLNA renders on my Andriod devices and the Sync was so bad some were even on different tracks.
So far, AirPlay (going through Airfoil) is the only system I have used which manages to let you add/remove devices as you please - even during playback - while keeping the audio in sync.
Sonos has a reputation for working similarly well, though I haven't used it.
Both systems are limited to 16/44 though, and I don't think either will properly integrate with Media Center.
Airfoil is certainly a nuisance to use - you can only send audio to a single "Airplay" sound device, which means that you can
only do synchronized playback between AirPlay devices, you can't treat them as separate Media Center zones and send different music to each device.
It's very disappointing to me that Media Center doesn't have a proper solution for handling sync - not even when using the JRiver id.
It sounded like that was a low priority item, if it's even being considered at all.
I want to have fully-featured Media Center clients placed around my house, but there just don't seem to be any good options available.
I didn't care about sync at all until I actually bought a DLNA-enabled speaker and tried sending audio to multiple rooms at once.
Now that I know how bad things get when DLNA is being used and it's not kept in sync, I wouldn't buy any device that lacks proper sync support.
The speaker I bought actually supported both DLNA and AirPlay, so I was able to compare what synced and un-synced playback was like - the difference is night and day, even when you're in different rooms with the doors shut, as long as it's loud enough that you can hear
some of the noise from the other area.
I didn't keep the speaker though - while it kept perfect sync when using AirPlay, the poor integration with Media Center meant it was just too frustrating to use.
And it actually makes me feel bad about using a USB connected DAC too - even if they get sync working over DLNA or some other method, there are additional latencies involved with USB which would mean that even if everything else is in sync, it won't be.