Data blending is often a good way to avoid duplicated data. You might try that--see:
There are some other options described as well, like using an Average calculation of:
I am also attaching a very simple workbook that demonstrates a data blend to avoid duplication, in case you've never seen data blending before. There are lots of resources and threads out there on this topic.
Edit: The above are all good things to know, but I'm afraid I missed the point of your original question; my apologies.
Try this, I used Johan's formula and Custom SQL to create a duplicate data source so there is a dimension to use. You'd need to duplicate for every column you wanted to display. Note that the table calculation uses an Advanced Compute Using with At the Level so the index won't increment on Source.
Thanks for that catch, Johan, here's the updated one. The change in results was caused by domain completion with the Source and ParticipantID dimensions on opposing Shelves (Rows/Columns), I turned it off by putting the Source on the Level of Detail and used ATTR(Source) on the Columns Shelf.