Carl, I have not tried placing the shapes on map but I agree with your conclusion that the maximum number of red squares that can be placed in Spring is 19, using 0+1+2+2+2=7 time for the 5 cards with red and 1 (or 2, if drawn last) time for a card with no red. With no wasteland, the total for Summer would be the same. In the first two seasons, if the non-red shape is used to cover a ruin (and the rest of the ruins are covered with red shapes), the maximum number of red squares for Fall increases to 20, provided the non-red card is drawn after a ruin, allowing it to be used for a single red square. However, in Winter, I believe that the maximum is again 19 red squares (from the five red cards), as replacing any of the non-zero-time red cards with a non-red card would result in fewer red squares. Hence, my conclusion is that the theoretical max for Great City with a board with no wasteland (and 121-5-20=96 vacant squares that are not adjacent to mountains) is 19+19+20+19=77 red squares.
On the wastelands map (with 121-7-5-19=90 vacant squares that are not adjacent to mountains), I believe that the max is still 19+19+20+19=77 red squares because, although it is possible to cover 2 of the ruins squares with the same long red shape, a non-red card still has to be used (in both Spring and Summer) to cover the ruins that are adjacent to mountains.
In both cases, for simulation purposes, I would suggest that the non-red shape be the 2-square green shape (instead of the 2-square yellow one), since it can "block" 2 sides of the same mountain without any additional waste.