Estimation is a dark art to start with and is often missuesed and abused to the detriment of the development team. As any valuable project has a level of uncertainty, estimates should never been seen as promises.