Does performance matter here?  I believe it's quite expensive to create the context.  (or one of the objects at least).  And it's cheap to do the marshalling.  Recommend a caching mechanism or at least a note that this shouldn't be used in performance-critical sections.