This seems to be a very common question. It seems that most do not understand how complex and involved forming really is.
The first thing you need to understand is that when discussing flattening, there are 2 different types of surfaces: gaussian surfaces and non-gaussian surfaces.
A gaussian surface is a surface which can be flattened without distortion. Examples include cylinders and cones.
A non-gaussin surface is a surface which cannot be flattened without distortion. Examples of a non-gaussian surface include a sphere or saddle shape. For instance, an orange peel cannot be flattened without tearing or stretching itself.
Most sheetmetal functions in today's CAD tools like SWX depend on gaussian type surfaces. Calculating flat patterns from these surfaces is quite easy and can be done with minimal knowledge of the material properties and bending process. Flattening a gaussian surface in SWX is quite easy, but SWX cannot flatten a simple surface. It must be a solid model with a uniform thickness.
Flattening a non-gaussian surface, however, is much more difficult and not supported (or very limited) by most mainstream CAD tools.
The truth of the matter is that some CAD packages DO have the ability to flatten non-gaussian (compund curvature) surfaces...BUT DOING SO IS USUALLY NOT ACCURATE!! Flattening such surfaces requires EXTENSIVE knowledge of the material's physical properties as well as the forming process. In those few CAD programs that can flatten such surfaces, neither material properties or process is specified (adequately).
FEA and specialized forming software is available and can be used for such processes, but they can be expensive and the results of these are only as good (or worse) than the data that goes in.
I think many surface modelers can flatten compound curvature surfaces (Rhino, Alias...). But, I would seriously question their accuracy based on my above comments. The primary uses of flattened surfaces in those tools deal with texture mapping and other 'visual' needs. Flattening in these programs are not meant to produce a blank pattern suitable for manufacturing purposes.
All that being said, SWX2003 does have a nifty little feature called a lofted bend that can be used to create and then flatten a non-gaussian type shape. But, this feature is pretty limited and SWX even includes tools to analyze the resulting flat pattern and its errors.
In summary, flattening non-gaussian surfaces is a VERY complex and involved process that is beyond the scope of most modern CAD programs. Some programs can flatten these types of surfaces, but their use in a manufacturing environment is questionable at best. Your best bet is to find some sort of specialized flattening sofware that specializes in your type of work (BlankWorks, for example).