That's a typical field calculation order problem. In Forms Edit mode go to
Other Tasks - Set Field Calculation Order and order the list in the order
the fields should be calculated, ie fields that are dependent on other
fields should appear below them on the list.