I am not sure how to make sense out of the following observed results.
var f = new Func(uc.ViewModel.SlowProcess);
1) (VALID
Your delegate that you are passing into Task.Run does not match and any of the expected signatures. It takes in a CancellationToken and returns a string which does not match any of the allowed signatures.. Getting rid of the cancellation token allows it to match on of these:
Run(Func)
Run(Func, CancellationToken)