You can argue that its not the right approach, but it'd very much what Larian intended, and they're going for a pretty tried and true trope. I think they specifically want you to be in a situation where you have to join up with characters you ordinarily wouldn't if you had a free choice. You're free to dislike that approach but I don't think it's a flaw, it's just a game design choice that some people will like more than others do.
Of course, this is all my opinion, some may disagree, but I'm still free to speak my mind, and I personally think that this design takes away from my "freedom of choice" I suppose, without feeling like I'm just being stupid in some cases.
I don't think it takes away your freedom.
I'm my case, I didn't let Astarion join because he put a knife on my neck.
I didn't want Wyll close to me because of his devil problems.
I didn't let Karlach join because she's asking me to kill people when I don't even know her.
Gale was stuck on a portal, so to me he's not a good wizard.
The only reasonable choice is Lae'zel, and SH if you free her.
But at the end of the day, it's just player choice, especially if you're role-playing.
Maybe what you wanted was something similar to DOS2 where you can talk with the possible companions and 'get to know them a bit before choosing?
Edit: Only exception I know is Halsin, which is forced to join you (something I really dislike).