One difference is the presence of the pool command. If your original vip assigned the pool in the access policy, then disabling access would mean the pool wouldn't get assigned so then the traffic wouldn't go on to the backend pool.
The other difference is this is unsetting the flag after each request. This makes a difference if you want some requests to go through access and others not ON THE SAME CONNECTION. For example, your irule would work with an attached pool and as long as the /ews requests always came on a new connection. But if an /ews request came and then another request came on the same connection that you wanted to be handled by access it wouldn't be (and vice versa).