I agree with Kestas for the most part. It depends on what you're trying to remove with the flush. If there's oil in the coolant, I've found that Cascade dishwasher detergent works really well- I've got the parts department at the shop to keep a couple boxes on the shelf. But for rust and scale, you need something acidic. I've used vinegar in the past, and it works pretty well- I imagine that citric acid would do the same thing... not sure where you'd buy it, though. That might be what they use in those off-the-shelf radiator flushes at Walmart... don't know.
I've also used a 2-part Penray industrial flush in some really nasty cooling systems. The first 'part' is pretty acidid- don't know the ph or what KIND of acid it is, but it has a sharp/sour smell and puts out fumes that burn the eyes a little. Then you rinse and put in the second 'part' which is just baking soda as far as I could tell... which neutralizes that acid and probably acts somewhat like a detergent to remove oily critters. The stuff is expensive and sold bulk (one box will flush about three heavy truck cooling systems- at 10-12 gallons each). Probably not practical for your application.
Years ago, I had an '84 Ford F250 with a really crusty radiator. My choice was to either get it cleaned out or buy a new one- and vinegar just wasn't doing the trick. So I removed the radiator and filled it with a 1:4 mixture of muratic (aka hydrochloric) acid and distilled water. Let it sit for about an hour and washed it out with a steam cleaner. I was a little surprised with the results- it was spotless inside. And even more surprised that it never leaked for the next two years that I had the truck. Sold it to a friend of mine who still has it, and to my knowledge the radiator is still holding together. But this was a desperate measure for a desperate situation... you won't likely have to resort to this.