Shape.hasShadow cache invalidation fix

Typo was causing hasShadow cache not to be invalidated after using setShadowEnabled. Fixes issue #693