In case anyone from Nero looks at this, here's the explanation:
Media Center enumerates WMDM devices in one thread.
It then creates a different thread for each handheld plugin. If those handheld plugins are WMDM devices, the plugin also creates an instance of WMDM.
The Nero plugin (neroburnplugin.dll) dead-locks when WMDM gets accessed from the second thread in the same process. No other real device we've ever dealt with exhibits this problem.
We only have two possible work-arounds:
1) Disable neroburnplugin.dll while we run. We do this on XP, but Vista UAC makes this impossible.
2) Not support WMDM devices when neroburnplugin.dll is installed. We could message this case, but it will still lead to cases where people don't have devices when they expect to.
Thanks everyone.