To start, I loaded a different magnolia flower image into GIMP – one that had the back of a petal showing. I used the Rectangle Select tool to drag out a selection over the petal and copied it.
Then I pasted it to a new layer behind my flower and resized it to the image size using Layer > Scale Layer.
I decided I didn't like that diagonal dark spot in that position, so I used the Rotate tool to rotate it into a horizontal position.
Since it no longer fit the image size correctly, I resized it again and used Layer > Layer to Image Size to crop the layer.
Next, I copied this new background to a new layer above the other one and used Colors > Hue-Saturation to change the color to a nice shade of blue.
Now the trick was to blend the two layers in a cloudy fashion. Using Filters > Render > Clouds > Fog with black as the color, I created a Clouds layer.
TIP: If you don't like the clouds that are generated, keep running the filter until you get something you do like.
Then I added a white layer mask to the blue layer, copied the Clouds layer, and pasted it onto the blue layer's layer mask. Then I deleted the Clouds layer. The black part of the layer mask makes the blue layer show and the non-black part makes the pink layer show.
To lighten up the background, I added a white layer above the background and below the flower, set the Layer Mode to Soft light, and adjusted the Opacity.
To invert the colors, it is easy to simply swap the two color layers and move the mask to the pink layer.
Gaussian Blur can be used on either or both of the layers to make the texture a little smoother looking. Blurring of the mask can also change the look. Adjusting the opacity on the upper color layer will add more or less of that color to the mix.
I like the way this method creates a background that looks hand-painted. Experimenting is always fun. You never know what you might end up with.