The development tools for SharePoint have improved a lot in the 2010 version. If you know ASP.NET MVC but not SharePoint, you'll probably get your application done faster in MVC, but the question is what will happen to it afterwards. SharePoint makes it easy to make applications that non-developers can modify later in some way.
For instance, you can:
- Make parts of your application available as web parts, which users and administrators can place where they want
- Deliver your application as a SharePoint solution, allowing administrators to deploy it within some other context, such as an intranet site
- Allow power users to edit forms with SharePoint Designer or InfoPath
- Integrate with the collaboration functionality in SharePoint, such as document workspaces
On the other hand, SharePoint gives you lots of stuff that may just be in the way, (there's a ton of databases, IIS sites, services, etc.), and you may have to work harder to achieve the same level of visual and functional control over your application as you would in MVC. And unit testing is pretty hard.
So basically it's a question of how flexible you want the application to be, and at what level. I wouldn't use SharePoint 2010 for everything. This site - Stack Overflow - is an example of an application where SharePoint would just be in the way.
To answer your other question, though, I don't have any very strong arguments not to use it, if that's what your client wants, (apart from that it will take longer, because you'll have to learn SharePoint). And considering that SharePoint 2010 is pretty fun to work with, I'd take the excuse to get to know it. Then you'll be better able to argue for and against it in the future.