There's a difference from being a mainstream artist and being a popular artist.  Look at The Roots, they're extremely popular, but definitely not mainstream.  They may be on Def Jam now, and Def Jam is owned by Universal, but they made their name through doing what they wanted independently, just as Macklemore is doing (not that Macklemore can even touch the Roots).   Big name record labels don't let talent become mainstream because with talent usually comes a brain and the labels want followers, not individualists.  That's why nearly every talented artist has had to make their name either by putting their talent aside and doing what the industry tells them to do, by starting their own independent labels, or by joining an already established independent label.  You can't make the music you want to under a big label these days unless you go independent or are a genius like John Mayer and sell your soul for 5 years so you can do your own thing the way you want to.
I don't love Macklemore, and I don't think I will ever listen to him in my free time, but goddamn he puts on one of the better hip hop shows I've been to.  I respect that he does whatever he wants, how he wants.  Shit, if Zion I promotes him, he can't be that bad.  I saw Macklemore touring with them before he blew up and Zumbi let him come on stage and freestyle with him.  Macklemore almost out performed Zumbi and Zumbi couldn't wipe the smile off his face he was so impressed.