Homebrew. Designing a setting from the ground up is fun to do (if a bit tedious at times), and once I'm done I'm not bound to anyone else's lore or canon etc. other than what gets established through play and exploration. I also leave lots of "blank space" such that if a new element or idea arises long after the campaign starts, I can still fit it in.
One lesson I have learned in designing/running homebrew settings, though: history is important. Sure from the players' point of view the PCs might be just exploring some abandoned ruin somewhere, but if you-as-DM/designer have at least some idea in your mind of what that ruin used to be, why it was built there, and how/why it got to be in the condition it's in now, it can really help in grounding the setting and making it all just that much more - for lack of a better term - "real-feeling"; as this depth of history will almost certainly come across in how/what you narrate. Further, if you're lucky and the players/PCs start proactively asking these questions you've got the info ready and aren't left making it up on the spot.