Wp redirect to url with ampersand string

Nothing I see in Core would do that in either wp_redirect() or wp_sanitize_redirect() (which is used by wp_redirect()). However…

  1. both functions are pluggable and so could have been replaced by
    theme or plugin code.
  2. And wp_redirect() has the wp_redirect filter that can be used to
    alter the redirect location– the part you are having trouble with.
    Something could be causing trouble.

I don’t know how to guess at which of those two are the problem.