Edit: Some corrections I've learned since posting this article. Some have had good results either adding noise or blur to regular images, which would save you a custom node.)
Like Flux2 Klein, I've found that Minimax H3 is a bit too literal when it comes to interpreting reference images. To mitigate this, using a latent instead of an image and adding noise is a good way to get more variety from the reference images, without having to rely on heavy prompting (because that also works).
Example
Here is a simple block render I made for a completely other purpose than this article.

Here's what happens when I use this as a reference image, with the prompt:
integrated_multimodal_description:
Scene: Use <Picture 1> ONLY as a compoisition reference for the scene: cinematic footage of an ancient greek temple.
[Shot 1] the camera slowly pans right along the columns. people in colorful togas are seen walking up and down the stairs
non_diegetic_music: N/A
Not very unlike the original. Let's try the latent method.

Latent strength: 1.0
Hmm, not much difference. Well, at least it proves using a latent works since it got the reference.
Let's add some noise.

For your convenience I fast-forwarded to 0.38, since 0.5 was not worth watching. Still very blocky, but at least it's doing something.

I'd say we have found a pretty good sweet spot here. It's still adhering to the composition, but has changed the texture to something believable. Latent strength is 0.33, but it will differ based on prompt, sampler, loras, etc.
Let's go even lower and see what happens.

At 0.25. While it still resembles the structure of the reference building, it has started to take more liberties in the composition, and we're closer to it's own interpretation of the prompt. (Spoiler: Removing the reference produces a similar result)
Now you want the juicy stuff. How was it made? Sadly, the answer is "custom node", since the input is not supported natively. I took the regular nodes and added latent inputs.

This is how I wired the latent. And merging it with an empty latent will make it lose "strength", and affect less, giving the sampler more freedom (this works great with Flux2 Klein as well).

(Instead of this complex setup, you can use LatentMultiply, but invert the values, so 1.0 is full strength).
I've made my custom nodes available in a github repository:
