Do you want to add 23 hours to the time field?
Do you want to add 15 hours to the time field?
Do you want to add 4 hours at 5 o'clock and 8 more at 17:00 the next day
which is neither 23 nor 15?
Also 12/06/2012 13:00 t 14/06/2012 10:00 is (I think) 45 hours. Neither 23 nor 15.

OK.
First let me see if I now understand the issue. If I do, I will have a couple of follow ups.
My understanding is:
For any given starting timestamp you want to be able to add a number of working hours and calculate where that would take you to in real time.

To use your example:
If someone gave you an order for a widget at 12/06/2012 13:00 that took 15 hours to produce you want to know that you can not promise delivery before 14/06/2012 10:00.

If I were approaching this my first thoughts would (as always) be how do I build
a logical database to underpin the project.

Requirement one is a table holding each days working hours
(whether this needs to be materialized) or can be built on the fly from other sources is your issue.
WORK_HOURS
BEGIN_TIME TIMESTAMP,
END_TIME TIMESTAMP

That is as simple as I can make it and allows for as many breaks as you wish
(lunch, other, miss weekends and holidays)
If you have different types of hours (regular, overtime, double overtime) you need an
extra column for PERIOD_TYPE.

=====================
For the basics, that might be all you need.
LINE_ITEM_ID, STAGE_ID and STARTED give you all you need to query everything else.

From LINE_ITEM_ID, STAGE_ID you can find out how many work hours remain.
From STARTED you can look up where you are in the WORK_HOURS table.
From there you just do the math against the WORK_HOURS table.

Depending upon your database, you might, for math convenience, want to add a calculated column to WORK_HOURS
or a VIEW (but not a real column)

I dont need to worry about public holidays and so on.They said thats their problem. I just work with a normal days hours from 8:00 till 17:00. which has n lunch break of 12:00 to 13:00. So in otherwords a perfect world where there is no holidays and no machine will ever break.

So when i add the order i check todays date, check what is the product i am going to make check the product file and calculate each process on the order and store it. Then the rest will work.

This design (IMO) violates first normal form and should not be part of your design.

In terms of your situation it absolutely locks you into a three stage situation for all products all of the time.
My suggestion, on the other hand, allows every product to have as many, or as few, stages as may be required.
You will never have to shoehorn multiple stages into one just to satisfy your software design.
e.g.
Suppose at some stage you offer a cabinet with an upholstered seat on top.
Now you have a fourth stage.

I know your client may say this will never happen; but that is not my typical experience

As far as calculations are concerned, I am not sure how dynamic your times will be when delays occur.

The basic theory, as I would approach it is as follows.
I use the simplest of situations.
You are entering a new record and want to know when stage one will end.
Say stage one takes 15 hours.
Logic - pseudo code:

Obviously I have not accounted for all situations; but I hope this gives you a good start.
Naturally, I have not checked this in any way, so there may be logic or calculation errors.
The point is that it is an approach to the problem that might help.