In my business, and in a non-profit that I used to help manage, we always prepared a budget, but never thought of it as binding. To me a budget is just a guideline and projection of future needs. Even if I prepare a personal budget, if something unexpected comes up that I have to pay for, like a medical bill or auto repair bill, well I just have to pay for it, regardless of whether or not I budgeted for it.
Likewise, I really don't like the idea that if I budget $X for a project, and it turns out that the project can be done under budget, that I then expand the project just to use up the rest of the budgeted funds. Just because $X is budgeted doesn't mean that I should use all the money if it's not needed, nor does it mean that I should abandon a partially completed project just because I maxed out the budget.