I understand how the frustration can occur, but I've always just think of it from this approach; delays are based off of "estimated" time. The only time that is set is the "scheduled" time and if the airline can adjust its estimated time as close to scheduled time as possible, then they most certainly will. Maintainence or ATC delays can always change at any moment.