Answer:
Generally theoretical models work only in theory. E.g. perfect competition models exist in theory but no market is really a perfect competition market.
The Ricardian model or the H-O model, or other trade models make the mistake of assuming that resources can be allocated at will and almost immediately, e.g. a fisherman can immediately become an engineer and start developing apps. Or a farmer that produces corn or rye (very popular examples) can suddenly start working at a factory producing bluejeans.
In real life, it doesn't happen. Also, trade models never consider natural trade barriers and extra costs related to trade. E.g. it is not the same to sell $10,000 worth of corn (you need a very large truck) than selling $10,000 worth of jeans (all you need is a small delivery van). In real life, trade is not simple, it is actually extremely complicated.
E.g. everyone knows that manufacturing goods in America is not efficient, at best companies can be less inefficient, but no manufacturing company in America is really efficient if we compare them to foreign companies. Even people who work in manufacturing industries know this, but they want to continue working in them. They want the companies to keep producing in America and they want to keep their jobs. Not everyone in America has a college degree in computer programming, finances, is able to design robots, or is a doctor, etc.
In real life, efficient industries have to exist alongside inefficient industries, and the whole economy suffers from it. But it is unavoidable. In the long run, the economy will eventually shift resources to more efficient industries, but it takes a long time, and a lot of people and companies will be against it. E.g. every year there are less shoe manufacturers in America, and eventually sometime in the future there will be none.