После небольшого поиска и экспериментов мне не удалось связать отчет с пользовательским объектом, содержащим дочернюю коллекцию. Вместо использования объекта .Net я разработал отчет с использованием схемы XSD, а во время выполнения сгенерировал файл XML и установил источник данных отчета о затратах в DataSet, который я построил с использованием метода .ReadXML.
var exportData = new XDocument(....);
var dataSet = new System.Data.DataSet();
dataSet.ReadXml(exportData.CreateReader());
var report = new ReportDocument();
report.Load("...");
report.SetDataSource(data);