Anyone in the world can go to other country and became a citizen if they met all the requirement to become eligible so it's not something specific for cricketers alone.

And that is how USA participated in the champions trophy with the players origin from India and other countries but played for USA which will not work in the long run because even they these player got talents they got other careers and chose cricket for a month or two but in the hardcore cricketing nations the players who will just live their life as cricketer by 24/7 effort to become a better player so an occasional player can't match that level from someone who spend years to reach the same.
And even though those countries can indirectly take players from countries like India and Bangladesh, in most of the cases, those players do not have top level players. And that is why you will see that even though Even USA fulfills their squad by many Indian players, they are not known as a very strong cricket team.
And I think that the career of those players who try to build a career in my own Origin is better if we see that Rashed Khan in Afghanistan has created his career very well by playing in the Afghan squad that I think I could not play for another team.