Run through this C++ game tutorial (
http://www.gamefromscratch.com/page/Game-From-Scratch-CPP-Edition.aspx ), by the end of it you will have created a simple 2D game using SFML.
If you made it to the end of the tutorial and actually understood what you did, you are easily ready to make a side scroller. Then just keep iterating, you become better by doing, so keep at it, create more and more games and eventually they will become less and less crappy. Then move on to 3D and keep at it.
I wouldn't really bother with DirectX inititally, use a library like the earlier mentioned SFML, or when you move to 3D, something like Ogre3D or Irrlicht. Once you understand working in those environments, then consider creating your own engine using DirectX if you insist.
The most important thing to do is keep at it. Frankly, 2 months is probably enough time spent working with C++ to start trying something more complex. Hopefully that earlier mentioned tutorial will help you in that regard as well.