The quick answer is, no a kid doesn't HAVE to play HS ball.
An example is Cody Poteet now in MILB via UCLA. He didn't play on his HS team at least for his last year; I believe he played in an alternative spring league made up of HS and college aged players (Southern California).
But there was plenty of discussion amongst the baseball community (scouts and college coaches) about that decision. The decision didn't effect Cody, however, as he was drafted out of HS, but chose to head to UCLA. That same decision by a kid of lesser talent may not have had the same result.
In the universe of schools you are looking at, I don't think you'll settle on a baseball power private school, so your son's baseball skill building would come outside HS in any event. No one cares where those baseball skills are built, just that he has those skills.
We felt we prioritized HS education over athletics; chose a very small (250 student HS [125 boys]) private school with a very poor baseball program (though with superb coaches). So bad, that when S wasn't pitching he was a left-handed shortstop. The choice of the school as well as playing for that school didn't affect his baseball options. While he was a dominant force on the team, he loved being able to play with his buds (some of whom had last played as 8 year olds) and didn't mind the talent level. His best friends to this day are the kids on that team.
(But, we did learn - during the college selection process for my daughter - that the road to a very high academic college may ironically be easier if you are a top student at a poor public HS as opposed to a a top student at a high achieving private HS.)