Use try...catch to run the getter when polyfilling defineProperty

If not, getters designed to throw (like loader.realm) actually throw at
the incorrect moment