Ah I got it. Its an optical illusion, or at least just close enough that no one notices it is off.
We are assuming that the hypotenuse of the overall large triangle is a straight line - it is not.
For this to work, the smaller triangles would have to be similar, i.e. all three angles would need to be equal, regardless of leg length. If you call the smaller acute angle of the grey triangle alpha, and the smaller acute angle of the red triangle beta, then tan(alpha)=tan(beta). If you calculate this out (tan = opposite leg length over adjacent leg length), tan(alpha) = 2/5 and tan(beta) = 3/8. 2/5 != 3/8. Basically, the gray triangle has a slightly steeper slope than the red triangle, but between the thickness of the black outline and the closeness of the angle, it looks like a straight line. The additional area taken up by that angle break in the hypotenuse is what gives the extra .5 units of area over what should be taken up by the larger outer triangle.