The computer science department at Bowdoin is tiny, so I would rule them out, which is too bad because the proximity to Bates & Colby provide a couple of nearby competitors.
Stevens has been undervalued by some here. It is a very good school and has a lot to offer in your son’s areas of interest.
Middlebury is an attractive option for computer science because their program is very well developed, but I agree with Twoinanddone that travel for games could be a nightmare here. That has to be considered in the decision.
Williams also has a strong computer science program. Although it’s remote, travel should be a little better. Great school.
For me, the choice would come down to Williams or Stevens. If pure Math is a strong interest, I’d go with Williams. But if computers are the stronger interest, it would be a tougher call. The Stevens location has a lot going for it if he’s going to spend a lot of time traveling. But I still think I’d lean toward Williams