Hmm... Depends on what semi-professional really means. The goal is very ambitious to say the least, but with focus, you can certainly be fairly decent in that amount of time.
Going from C to C++, note that one major difference is that a well designed C program rarely looks like a well designed C++ program (assuming a non-trivial program), so don't merely add on some extra syntax to your knowledge of C.
That said, good luck.