To me, it be fair if in pubs, you face players around your skill level, or at least not too far off, such as a plat player being in a lobby with masters. Its not fair if you're a high skilled player and you're put into a lobby with players who are new to the game or don't play a whole lot. As for rank, the differences between everyone's skills should be as close as possible, such as a gold player playing with plat players, and not diamonds and above or silver and below. Then with mixtape, it shouldn't be a pro player in a match with casuals. Mixtape is more of a fun warm-up mode, you can't really do that when you're getting destroyed by high ranked players.
TLDR;
Pubs - Skills varry, but its not a new player vs pro match
Ranked - Skills slightly varry, players more at each other's skill level
Mixtape - Skills varry, however teams are balanced so its not just one sided, (its not fun in games like control and TDM)