My latest series on custom WF activities has provided a solution for managing business failures.
The BusinessFailureEvaluator<T> activity evaluates a single business failure and may result in an exception being thrown.

The BusinessFailureScope<T> activity manages multiple business failures and may result in an exception being thrown for a set of failures.

The following is a list of all the posts in this series.
This workflow activity and several others can be found in my Neovolve.Toolkit project (in 1.1 Beta with latest source code here) on CodePlex.
Tags: WF