How do you know when it's done?
Of course, it's not done. It's never done.
That's not the right question.
The question is: when is it good enough?
Good enough, for those that seek perfection, is what we call it when it's sufficient to surpass the standards we've set. Anything beyond good enough is called stalling and a waste of time.
If you don't like your definition of 'good enough', then feel free to change that, but the goal before shipping is merely that. Not perfect.