Most specific proxypass directives take precedence over the most "global" ones, while with Location is the opposite, you must define the most global paths first and then the most specific.
So with ProxyPass the correct order or definition would be (if you define /something later it will be ignored):
ProxyPass /something ...
While with Location the order of definition should be (If you define /something first it "overriden" with "/" settings):
So whatever happened earlier (but I too found weird that this has changed), mixing ProxyPass in virtualhost with ProxyPass in Location is a recipe for confusion and problems, and I have to read what you did, I could also find logical your Location is ignored, because Location works differently than ProxyPass.
My suggestion is just define ProxyPass and similar directives directly in virtualhost and use Location for something that can't be avoidable in certain cases, like authz related directives, etc. And remember the desirable order of preference to not get directives ignored.
If there is a bug or a real change between versions, I leave that to Nick and the other devs :)