This works perfectly. I put a c# shim template up on github.
There’s a couple of small quirks, so I also recorded a quick YT vid.
Basically you have a shim and a normal plugin. You want to load the shim and debug it. For the normal plugin, you want to disable it in Rhino through the _PluginManager (accidentally running the normal command will prevent you from rebuilding) and unload the project in VS (force it to use the debug symbols supplied through reflection).