I've been a self-employed software engineer for more than a decade and I've worked on 100+ projects. Very few of them got done on the original timeline, but none of them were overdue to anything close to this degree.
If I tell a client it'll take 3 weeks and it takes 6 months, there will be a mountain of shit raining down on me (and them), starting with them never working with me again, and possibly ending with them refusing to pay at all or legal action.
Not to mention that you'll never win the project in the first place if you start quoting your estimates this way: "Hmm, that $4,000 site that I think will take 20 hours at $200 / hr to build? I'll just quote it at $64,000 to be on the safe side."
(Note: just an example, you shouldn't price projects this way anyway)
These naive rules of thumb are always so arbitrary too. Why bother with the doubling and changing of units, just multiply by 1000 and call it a day.
A much better rule of thumb is 1.5x to 3x, depending on how conservative and experienced you are, how many risk factors the project has, how much you'll be depending on the client, etc.
Software is really hard to estimate properly, and cost and timeline overruns are a fact of life. But if you regularly find yourself 10x overdue, you should probably revisit the way you're doing this.
Major IT projects are almost double over on timeline on average, but not 8-10x: https://www.economist.com/business/2005/06/09/overdue-and-ov...