How can co-dominant alleles work in flower petals?
We tend to use "incomplete dominance" to describes situation of haplo-insufficiency.  The white flower petal has two broken alleles for making pigment, and one working copy doesn't yield enough pigment to make the flower look as red as it would if it had two working red pigment alleles.

"Co-dominance" is for two functioning alleles when the effect is that you can see them each, and the result is not an intermediate blend.  Like having a working A antigen and a working B antigen. A blood will not clot when mixed with A blood.  AB blood doesn't halfway clot, it also won't clot at all, just like A blood.