From my experience, this is adding minor features at increased implementation and maintenance cost in comparison with using just "pure" Microsoft.Net, ASP.NET and IIS application.
Sharepoint 2007 = ( no concept of deployment version control etc, narly css/skinning, weird cms features, sp webparts not recommended, very limited worfklow features)
Sharepoint 2010 = ( is everything fixed? )
The generic feeling I have is to stay away from Sharepoint, implement in pure asp.net using proven patterns and practices, architecture etc. And just consume Sharepoint services when suitable.
Is Sharepoint 2007 or 2010 ready for real line of business applications running extranet with thousands of users, or should we just go for asp.net?