As the code currently stands,
SiteCustomizations#custom_header(key) look like they can support having multiple customizations enabled at once, but only one stylesheet is ever loaded and only one header is ever loaded. These two call sites should probably find all enabled customizations, and any previewed customizations, and load up the stylesheets/headers for each.
To make matters worse, previewing a customization replaces the customization all other users are using, since it’s set in your session and the current code doesn’t “trickle down” to also load the other enabled customization (
preview_style ||= enabled_style_key, so it can never be both. Then, it doesn’t seem to get cleared when it should; the preview goes away, but the globally-enabled customization never returns.