Sharing the custom marshalled type across libraries - C#