The reason for the high flight prices for charter flights between Miami and Cuba is apparently that the Cuban government, eager for revenue, is collecting a substantial landing fee for each flight, which goes into the Cuban general fund or elsewhere.
It's not clear whether the same is true with commercial flights, including the proposed direct US-Cuba flights that may eventually be implemented to the extent the woeful Cuban airports can accommodate additional flights.