Use additional precision for accumulating area.

This uses double the available floating point precision, so that
small floating point errors do not accumulate too quickly.

Fixes #1305.