You can buy almost anything with either $ or Riel. The exceptions to taking Riel are likely to be top of the range hotels and restaurants and possibly air travel and as you say some major tourist attractions. No where will refuse $ but make sure the size of the bill is relevant to the price as change may be a problem
There is no problem in changing left over riel to $ at the borders (or baht if Thailand) but make sure you get rid of your Riel at the border as otherwise they become worthless