Why does squaring generate a different result?

Unfortunately, the variance grows (then contracts) as the model progresses.

I can state that the value is double precision (real(DP)) and assume that the way the calculation is carried out differs in some way.