A recent visit to Lima showed me that virtually all retailers who accepted both cards had to use two different terminals instead of a unified one. Is there a specific infrastructure, culture or market related reason for such a situation?
It means that they use different processors for each network. That can definitely happen, depending on the local market, rates, convenience, etc. More sophisticated POS can support multiple merchant accounts, the cheaper ones are usually set up to use a single merchant account with a single processor. Thus, if they use bank X for Visa and bank Y for Mastercard - they may have two separate machines if they want to save on commissions/rent costs.