^ exactly this.
To add on, it's also about consistency. If you get honored every single game you'll very likely get the ribbon. If you get an honor every 5 games, then you're chances drop a lot.
Personally, I currently have the Teamwork Crest of Honor. In total I've gotten it 4 times now and I've played for about 1.2 years. I've lost it mostly because of a week of inactivity (like when on vacation). So yeah, inactivity will make you lose your crest (or your chance of getting one).
If you're the least bit toxic, you might not get the ribbon ever, so sportsmanlike behavior is demanded of course! If you're a good person every single game, you're sure to get a ribbon. :)
For reference, I have 1568 Teamwork honors (but remember, quality > quantity). ^^