You should probably have a contract, but that being said, I blog for clients every day and I don't have a formal contract. Instead, I have a trail of emails and written messages that give the backstory and terms should I need them.
I think it also has to do with the individual you're working with. I work in a certain price range that draws in professionals and established businesses. I've never had trouble with payments - they are late sometimes, but the money gets to me.
Working in lower price brackets where the writers and/or companies don't plan to be in the industry for the long-term, you're playing with fire - that seems to be where the majority of the sob stories come from.
After 6 years without a major incident, I'm not in a hurry to write up a standard contract although I probably should - I do have one for a JV, though. They aren't just for companies; it's never a bad idea.