Unfortunately this is the easiest and best way I know of to easily get USD to BTC. Know of something better?
I'm probably not the best person to ask, as I don't much put dollars into buying coins anymore. In the past, I've made P2P trades in the currency exchange subforum. I'd prefer to do things P2P, in person, etc. I don't like dealing with exchanges, so when I do, it's just to send them coins, sell them, hold fiat for a while, and buy coins to send out again.