You're welcome Philipp, great you got it working!

Your steps sound good. Creating an XYZReportBO is just for convinience, so if you need to add properties or make any customization exclusive for the report's sake, you won't be messing with your original BO.
As for the Reflection Property Descriptor, you are adding a property descriptor to your parent BO, so that is why you will need to make it a typeof(YourCurrentParentBO).
You might be confusing it because the property in question is of the type of your ChildBO, but it could be an Integer, a Boolean or whatever, and when you added the custom descriptor, you would still add the descriptor as the type of YourCurrentParentBO.
If I mixed all up, I'm sure SuperMan will jump in and make things right.