Your ranks switched because your elo was higher than the elo of your opponent. Even though his rank was better, so you switched when you won.
But when fighting poxpox, he has an elo of approximately 1630+, while with a rank of 3000, I expect you to have an elo of around 1602. If you get an elo higher than him, so also somewhere above 1630 and win, you will get his rank. But this requires you to win about 30 games in a row in a ranked servers, or win even more with losing from time to time.
Just keep in mind, winning gives you about 1 elo point +, while losing gives you 1.5-2 elo points -.
It's a pretty complicated system, you can google it up.