function getCubicSegArea(x1, y1, c1x, c1y, c2x, c2y, x2, y2) {
    return (3 * ((y2 - y1) * (c1x + c2x) - (x2 - x1) * (c1y + c2y)
             + (c1y * (x1 - c2x)) - (c1x * (y1 - c2y))
             + (y2 * (c2x + x1 / 3)) - (x2 * (c2y + y1 / 3)))) / 20;
  }
Returns the area of a single cubic-bezier segment.

http://objectmix.com/graphics/133553-area-closed-bezier-curve.html

@param {number} x1 the starting point X
@param {number} y1 the starting point Y
@param {number} c1x the first control point X
@param {number} c1y the first control point Y
@param {number} c2x the second control point X
@param {number} c2y the second control point Y
@param {number} x2 the ending point X
@param {number} y2 the ending point Y
@returns {number} the area of the cubic-bezier segment