There are too many reasons why businesses do not do well. So, this answer will have to be limited. With that said, there are three main reasons why businesses do not flourish.
First, often there is little market research. In other words, people may start businesses when people in that area do not need that product or service. You need to keep in mind that success in one area may not ensure success in another area. There are many variables like cost of living, income, and demographics that need to be considered.
Second, many businesses also fail, because they do not know their competition all that well. So, you might be right that certain products might do well in an area, but what if there are many stores that sell the same product? It will be hard to break in.
Third, many businesses run out of capital. It is hard staring a business and it takes a lot of effort. So, you might have to be prepared to suffer some down years before making it big. As for Pakistan, all three above reasons will apply. However, if you are a westerner trying to break into that market, then you will face social and cultural barriers.