Yes, domain aggregate functions can be veeeerrrry slow performers.
Not sure what you mean by 'rate adjustments be in terms of the current injection rate'.
I think your best options for data entry are: 1) daily for current rate or 2) only the difference when a change occurs as demonstrated.
Entering the current rate only when it changes and then trying to carry that rate forward to the intervening days by the query structure would be even trickier. Any time a record has to pull data from another record of same dataset is not easy - review http://allenbrowne.com/subquery-01.html#AnotherRecord