After 2k hours on my main account, my buddy wanted to finally join some CSGO with me. I couldn't play with him due to him not having a rank, so I created a new account. Yes, this makes me a "smurf" in this scenario, but there's a discussion below in the comments about that. (Should smurfs and cheaters be put together? I say no.) Regardless...
The first 10 games you play are your ranking games. You're currently visibly "unranked", and you don't have Prime.
In these games, I've found at LEAST 50% of games have cheaters in them.
With 50% of games or more having a cheater in non-prime, no-rank, it'll take you somewhere between 15-35 games to actually GET your rank...and since these are your ranking games, and you're playing against cheaters at least 50% of the time, you're "losing" those ranking games against "better" players, thus keeping you down in Silver, even if you might not deserve it.
EDIT: To expand further: Then say you receive your Silver rank against all those cheaters. Say you don't want to pay for Prime, and you want to earn it by leveling up to level 21 or whatever. You play Silver MM, NON PRIME, until you're able to get Prime...but this whole time, you've been playing NON-PRIME, dealing with the nonsense below in at LEAST 50% of your games:
Example 1 of Non-Prime Nonsense
Example 2 of Non-Prime Nonsense
Example 3 of Non-Prime Nonsense (KILLED YOU, YOU CHEATING FUCK)
So now you're Silver, non-Prime, playing 50%+ of your games against cheaters until you get Prime for free. Say you lose 50 games to cheaters playing on your way out of non-Prime.
You've now "lost" 50+ games to Silvers on your way out of non-Prime. Sure, you probably have 50-or-so wins too, but that's a 50% win-rate in Silver, over 100 games. That weighs pretty strongly towards KEEPING you in Silver.
This has been the worst experience I've had in 2k+ hours of CSGO, and probably the worst experience of cheaters I've had in any video game in the last 30+ years. No WONDER it's tough to get new people into this game.