It's not quite as cut-and-dry as Devin makes it sound, but it's true that we've used an auto selector switch in the past with great success.
The main issue with the default WPILib one* (or at least the implementation that many team seem to use) is that it has a network read to figure out what auto mode to run at the start of auto. We don't want to use that, because we tend to do a lot of buzzer-beater autos (2016 two-ball, 2015 chokehold, 2014 three ball, etc). Having the round trip latency from a network read would have killed us.
Other than that though, we tend not to trust NetworkTables/SmartDashboard. We've used them in the past (including last year, just not for auto selection) and have seen a lot of really weird difficult to debug issues. 1678 often ends up distrusting/not using wpilib stuff (I think that this is my second post today about it, and it's barely lunchtime

). I don't mean for this to be a
cargo cult thing, but we really have seen a lot of issues with NetworkTables and SmartDashboard. I've seen it not connect, not send values, display old values, and randomly decide to stop working.
In the past, we've used a bank of switches to select auto modes, because it's easy and reliable. We may be switching to a custom web dashboard this year, but just because we're confident that we can pull it off.
Bottom line is that we used a switch bank for autos because it's reliable and simple, and SmartDashboard is neither of those, in our experience.
*Note that I haven't actually used this in quite a while, so it's possible that this has changed.