Why OO? Why C++ so early in the curriculum? These seem like very specific/opinionated tools. I got a degree in math without ever taking a “HP 48GX” course.
There's a history of teaching C++ to novice programmers, with some success. It even used to be a language of choice for AP intro-to-programming classes. Teaching Swift or Rust would be far more opinionated. As for OO, while old-fashioned it's something that new grads should at least know about, and it can still be useful if you avoid the big footgun - namely, implementation inheritance.