Steemit rewards (the $ amount) depends on price of Steem. Steemit takes median price (average of last three days) of Steem to assign USD value to your upvotes.
When price changes, the value of all future and currently pending payout votes also changes. That's why the fluctuation. I hope it is clear now.
Ah, thank you! For some reason I couldn't get it through my thick skull that the rewards are in USD rather than Steem dollars (although the $ should have been a giveaway!).