I think there should be more than 1 way to get Gemstones.
Honestly I feel as if the method to getting gemstones is a bit too much for it to be the only way. I feel as if Gemstones should be awarded every time a player gets mastery 7 of a specific champion. Seeing as though that particular milestone isn't necessarily easily obtained, it should (in theory) be a balanced way of earning gemstones. It's easy, 1 gemstone per mastery 7. It should encourage players to do better in their games. Everything that's required to get an S rank.
Riot wouldn't lose money as there would still be an alternative and a necessarily easier way of obtaining them with hextech boxes.
What do you all think?