Contadora is no more than your average island with a few beaches that are not ugly but neither particularly attractive, and unless you have a Panamanian friend or are Panamanian with a house there, and accordingly a social context in which to enjoy your stay, there's absolutely no reason to go there - on a global scale of beautiful beaches from 1-10 (with BoraBora, Mauritius, Seychelles, Maldives, and Great Barrier Reef being 8-10), Contadora's are a 5 at best. The hotels all suck. The best seems to be Punta Galeon with the added feature however that it's not just next to, but effectively part of the airport, so for 2-3 hours in the morning and in the late afternoon (each), airplanes are taking off literally over the hotel beach which is at the end of the landing strip. Turbo props are extremely noisy too, and they start their engines exactly 30 meters from the hotel pool. Hotel Contadora is ugly, and while on the largest beach (Playa Larga), that beach has two very large boats stranded on it - not exactly my idea of paradise. Another beach next to it is Playa de las Suecas. It's a nude beach (Panama's only one), and virtually non-existent at high tide. We stayed at Villa Romantica and paid usd 114 per night which is near the upper end of the price range on Contadora (Punta Galeon is usd 135) in a room that was in a bad state of repair - like the whole place - which is for sale btw. The only reason we didn't complain is that we didn't care or bother anymore as we only had 2 days left to get some relaxing done and it's emplacement is cute enough to say "least of the various evils". It's above Playa Caucique which people consider one of the nicest beaches (still, no more than the aforementioned 5) and the neighboring houses are all nice private mansions with many yachts moored in front of the beach.
In short, neither the island, nor any of the hotels are worth your money, or more importantly, your precious time if you are looking for a stunning-beach holiday. Even if you are motivated by not spending the typical usd 1,000 a night in the Carribean over Xmas, there are much better price/value ratios around (Dominican Republic, Costa Rica, Brazil, certain parts of Yucatan).
That is btw also true for Panama City itself. It's ugly by any good holiday standard, with some cute features like Casco Viejo (the old town - but then for anyone who's been to Santo Domingo or Cuba, it's not thrilling). The most interesting feature is the vibrant nightlife populated by a curiously large number of breast-enhanced, beautiful women but that's obviously only really of interest to the bachelor crowd.
If you are already in Panama and looking for a beach, the two recommendations I suggest to look into: (1) Isla Bastimentos in the Bocas del Toro area for remote island feeling. We stayed at Al Natural Resort. Very simple and authentic. We also went to Red Frog Beach by boat which I would rate 7.5 (probably as good as it gets in Panama). Downside is that it rains a lot in this area all year round and, relatively speaking, it's more of a pain to get to with a 1h boat ride after a 2h flight from Panama City. (2) Hacienda del Mar on Isla San Jose. We haven't been as it was booked out when we called but on paper it seems the best thing you can get in Panama, and it's less complicated to get to.