The IHierarchicalDataSource interface shows the sillyness of ASP.NET's databinding model. It should be the data which should tell if the data is hierarchical, and even so, the control should just find out and if it is, use it.
The IHierarchicalDataSource interface defines a method called GetHierarchicalView. That method returns a class, not an interface. This is unfortunate, as I can't re-use the code in the View class I've written because what's returned is a .NET class.
So even if I wanted (these datasource thingies are really a pain to create due to lack of docs and design errors from MS' part) I can't, and have to re-implement everything. So no, they can't.