I usually spend a few days on one song working on and off.
I'm completely paranoid about it and a lot of times, i'll mix it, scrap that mix and start over multiple times.
When I get to where I think it's "done", I'll check it all over the place. multiple headphones, my car, friends cars, pa systems, dvd players (tv speakers). Anywhere I can play it, I'll check it and listen to see if it's still acceptable. If there's something wrong, I'll go back, adjust and do it again. Trial and error.
I still remember the first band I ever recorded and doing 18 different mixes on the one demo song. When I listen back to the raw tracks, I have no clue how the hell I got to sound as good as I did.