Another team member had a similar issue today (I’d just given up and worked with separate hours, minutes, etc. as the timespan was a ‘nice to have’ for the moment), and we worked out that although Dundas shows this as valid and previews it, it will only build the cube if you return a new DateTime from the timespan (assigning it a date).
For his problem, this didn’t resolve the issue as he needed average times, so he ended up calculating the average seconds, then creating separate hours, minutes, and seconds from that field and adding them together in the Custom Text of the field with colons between them, then setting the custom text formatting of each to 00 to show the leading zeroes.