See: https://www.tripadvisor.ca/ShowTopic-g147270-i91-k7342442-All_you_need_to_know_about_Cuban_currency-Cuba.html
You need to bring cash and convert to CUC. Best rates in descending order appears to be at a bank, an official "cadeca", the airport, or private currency exchange like a hotel front desk. There appears to be a 10% surcharge on exchanging USD, so it will be better to bring different world currency like CAD.
I have never been to Cuba, but am hoping and planning on a trip later in the year. My brother has been several times and has confirmed the above. He says he usually converts at a cadeca at the Cuban airport just for the convenience. He usually stays at an all inclusive resort and only converts about a hundred dollars for the week to have tipping money. Apparently, if you want any decent service, you need to tip. But the cost of living is so low that a small tip will go a long way.
Read the tripadvisor cuba forum for more info. Some travellers have posted that they give little gifts, such as pencils, tampons, or left over shampoo. I am perplexed by such advice and only plan to tip cash. Also, it is better to tip in CUC, and not your home currency which creates a hassle for the local worker to exchange. Foreign coins cannot be exchanged, so a CAD loonie is useless. My bro says it may be difficult to get small bills from the cadeca. He suggests talking with the hotel housekeeper or bartender to break the big bill into smaller bills. But it is important in any exchange or purchase to get CUCs back and not the local CUP currency, which is worth less.