Could you re-do the attachment as a twbx please?
File updated to a TWBX. Thanks for pointing this out Siraj.
Tableau's built-in totals (sub totals and grandtotals) are generated by separate calculations from those that generate the marks being displayed in the column/row. These total calcs are performed at the level of detail of the total, which of course gets less granular for the further you go up in the hierarchy of the view. Therefore, calculations that depend on certain fields being in the level of detail start giving strange results.
There are two methods to get a grand total that works for you: One is to create a separate view to calculate the total and put that in a dashboard with the original view, the second is to use a workaround to hack your own grand total values, I did a writeup in this post: http://community.tableau.com/thread/116854. However, I don't particularly recommend the latter solution because it's using undocumented functionality in Tableau that could change in a future release.