I suggest modifying Telerik.DataSource.DataSourceResult so that:
1) It's composed of only POCOs.
2) Data = IList<T> instead of a bare IEnumerable.
3) A separate strongly typed member IList<GroupingResults> for grouping and aggregate results.
This will make it much easier to solve the aggregate problem and make things much simpler for end users while at the same time allowing for easier custom implementations of processing a data set.