Any Thoughts?

The flagship product of the company I work for is a large VB6 application that is pretty much not upgradable to .NET for 1 reason and another.
As a plan to upgrade to vb.net 2005 we are considering writing a new VS2005 solution that has any new forms required in .NET but still has the ability to use the old vb6 forms. In this way as we upgrade each form we can just call the upgraded form and get rid of the call to the old VB6 form. We have found a way of using these forms in the new application using Window Messaging .
http://www.codeproject.com/dotnet/VB...owMessages.asp
It is however best described as "KlunKY" (technical term?) and can leave processes running all over the place when something goes wrong.(not on my shift)

The question I am asking is "Is there another, neater and easier, way of achieving this?"

Thanks
DoughNutCoder