I sew and would cheerfully make you a custom cover, only I'm in Australia and the cost of postage back and forth would be ridiculous. If I were you, I'd go to a fabric shop or curtain shop and get hold of some suède-backed or rubber-backed curtain fabric.
You want enough fabric to go around the circumference of the cage and drop as far down as you want your bird to be covered. Work out those measurements and add about six inches to each one. Give them to the person at the fabric shop and they'll work out the yardage for you.
All you need is to get someone to make the fabric into one huge curtain with a hem at the top and the bottom. That would only entail joining (perhaps) two pieces and then putting a hem at the top and another at the bottom. It's not outside the skill of a very basic sewist.
How you attach it is up to you. You could use neodymium magnets to hold it to the cage. You could thread strong elastic bungee cord or light rope through the upper hem to form a drawstring and then drape the curtain loosely over the cage, pulling it closely at the edges to keep out light. You could get really creative and find a small hula hoop (I'm actually thinking of the sort they use for mosquito netting). If you used curtain tape and open rings, you could thread those onto the hula hoop for a very easy-pulling cage curtain. The hoop would sit nicely on top of the cage and enable the fabric to be easily manoeuvred around to suit you and your bird.
If it were me, I'd make a paper template of the cage roof and then cut a piece of canvas to fit it. Then, I'd attach my curtaining to that so it hung in two or more panels, depending on what suited me. I'd insert a couple of large-tooth plastic zippers between the panels so I had the option of opening just one and flipping it back over the roof. Or, I could remove the whole cover on a sunny day.
Or, you could just get hold of a large sheet, custom made curtain, tarpaulin or tablecloth and drape the cage in it.
