Building a hard top of fiberglass or an aluminum foam sandwich is a technically easy job. There are two ways to build a fiberglass one: one is to find a mold or make a mold. There are commercial outfits which make fiberglass hard tops for any boat you want, such as Atlantic Towers. To make the mold yourself you start with a sheet of masonite or formica, and then put a athwartships curve in it, with strong backs behind. The edges are also made of a material which can be highly waxed. Epoxy or even polysets fillers can make the curves. The best core would be composite--either a foam, or Nadi-core. The top would be gel coated in the mold, the bottom would be sprayed, or painted gel coat, or paint. Probally the best support would be the cantileaver idea. The sides best with canvas, and awning rail to support the top of the sides.
The second fiberglass way, is to use one of the high quality thin plywoods, and bend the curve in it with "cruved rafters" on the underside--this is a bit quicker, as you just form the plywood (such as Occume 3mm). You then glass over the top and bottom, fair and paint.
The quickest and cheapest way is to use an aluminum laminated foam core, like a patio top. You can get these 2" thick, then seal the edges with Epoxy tape, and fairing compound. Use SS tubing for support. I had a similar top on the Symbol 42's flying bridge that I owned, and it looked quite good. It might be a bit thick for a C dory, and it has to be flat, canot be crowned.
I personally would go with a soft top, and SS racks for what you want to stow up there. This allows you to open the top for ventillation if you happen to ever boat in hot climates.