We are not sure why you are using page redirects, when the design of FOEX is to create a single page application style application i.e. we would expect that you would load this form page into the current page, whether in a window or using a hide/show layout.
That said, the reason why this behaviour occurs is that the button information is being cached (including the redirect URL) on the first load when the page has not yet been cached. Caching is to be used for non-dynamically changing values.
The reason why the form items (including page item buttons) do not have this behaviour is because we do not cache the form values when we store the form definition in our cache, otherwise you would always see the same (cached) record loaded.
We have updated your test case with a working example.