While calculating expected values, why did you multiply probability with TOTAL contribution? For example when contract size is 500, you multiplied 0.2 with 3500, 0.3 with 4000 and so on. But contribution from the contract of 500 is certain right? Probability is wrt demand only.
So in my opinion, it should’ve been 500×3 + [ (400x5x0.2) + (500x5x0.3) + (700x5x0.4) + (900x5x0.1) ] = 4500
You are going wrong only in the last piece of your calculation because there is an overall limit of 1200 units. If the contract takes 500, demand for 900 cannot be met and will be curtailed to 700. This reduces your expected profit by 100 (ie 200 x 5 x 0.1) from 4,500 to 4,400.