For those of you who encounter this post and also need to develop cross-platform plugins that needs a c++ backend, please check my solution that is now open to the public:
This is a Rhino-free library that can pass discrete geometry data between C# and C++.
Examples of Rhino type wrapper has also been added as a demo.