This is something I go back and forth with in my own head, usually a few times a day, unless it's one of those super-fantastic days where I get on a roll and kick some major booty. I tell myself that I should get x amount of work done, and if I don't manage to do it, I suddenly feel like I'm gonna take 50 times longer than I should on a project... That if I was actually "at work" I would be working much harder... And so on.
But the reality is, I doubt any of us have ever had even one solid week at any job where we were 100% all day every day. Little breaks, slacking off, checking email or Facebook or whatever on a work computer, texting while working, making things last a little longer than they need to.. Who hasn't been there? So why, then, is it unfair to think that none of these things are going to happen when working from home? Where is the magic switch in one's brain that says, "Sure, since I'm working for myself, I won't slack off any more AND I'll put an extra 10-20 hours of work in per week, no problem! And I'm gonna LOVE IT!"
That's not to say I don't love what I do - I really do! The freedom to work on whatever project I want, to get my message to hundreds of thousands of people, to be able to do it from home sitting next to my fiancee all day... Who wouldn't love that? I just need to remind myself that I am the type of person who's better managed by encouragement and respect than through being battered for not getting something done... Including when I'm my own boss! Heck, imagine if you lived with your boss!