I don't think you're right. Your issues with C++ are improperly directed. Your problems are with the MFC, not C++. That langauge has not changed since it was standardized by the ANSI committee over a decade ago. As to backward compatibility with VB 6.0, Microsoft did the right thing when it broke it, because VB 6.0 was not a full Object Oriented Programming (OOP) language at the time. To make it a robust OOP language required creating issues of backward compatibility. Had your programmers used OOP techniques (minus inheritance) from the start, the transition costs would have been minimal. The fact you're using C++ suggests you know OOP, so why VB 6.0 in the first place? Sounds like a design problem.
Would C++ programmers embrace a new C++ engine that couldn't compile old C++ code??
Because that's what MicroSoft did with VB.Net, it won't run code from any of the earlier versions of VB.
How would Java programmers react to a new Java engine that couldn't run old Java code?
...And you think that's the right thing?! You must be young and in no position of corporate or financial responsibility.