Quick answer: Vulkan pipeline rebind during a single render pass not changing the pipeline? Some drivers cache state per-pass; not per-bind - end and begin a fresh render pass between pipelines.
Multi-pass post-process within one render pass: second pass ignores the rebound pipeline.
Split into separate render passes
End the pass; begin a new one; bind. Driver re-evaluates.
Or use dynamic state
VK_DYNAMIC_STATE_VIEWPORT etc. State changes per-bind; no pipeline rebind required.
Profile per-driver
Behavior varies. Validate on each target vendor.
“Render passes have state lifetime. State changes outside that lifetime are sometimes ignored.”
If pipeline binds aren't applying, split passes. The cost is small; the bug is invisible otherwise.