rect.union is now returning when it wasn't before.
All bounds variables should never have NaN as x, y, width, or height.  This causes further operations to fail. (ActualWidth/ActualHeight being NaN has meaning.)