Much has been written on this and various other boards about exchanging U.S. dollars for local currency at black market rates which are apparently higher than official rates.
Perhaps the best approach is to just use U.S. dollars and if the item you wish to purchase is too expensive simply don't buy it. If you walk away from an overpriced item or service the vendor will come down in price. I suspect the same approach will work for vendors wishing to levy a surcharge for credit card payment.
I don't see the point in spending precious vacation time attempting to be an amateur currency trader. I suspect the locals know the exchange rate and as a tourist you would be well advised to also.