The point is that using C# or Java (or Visual Basic.NET for that matter) lets you get accustomed to and comfortable with concepts without having to put too much thought into the intricacies of the language. Learning to write software has very little at first to do with the language itself. Once you have learned the concepts (OO etc) you *should* be able to apply these to other languages and, if you choose to learn C++, you (theoretically) already know how to program so you can concentrate on learning to use the language.
Also, you seem to imply that C++ is somehow "better" than C#. It's not. You don't have to have an in-depth knowledge of C++ to be a good software engineer. It has its uses (exclusive and passive) certainly one of which being having a understanding of the inner workings of C#/JavaVM/VB.NET; but it's not the 'ultimate goal' of software development for all areas of development... and is certainly not a gentle introduction to the business.