All are valid reasons and yes, prices in Mooresville are typically higher then other parts of Lake Norman. Again I live and work in Mooresville, NC.
Here's my opinions why they are higher:
1) It is close to the lake, and you will see 281187 (the lake area) are higher then 28115 (in town)
2) The booming access to shopping, restaurants, etc.
3) NASCAR central
4) Lowe's headquarters
5) Lower taxes. Iredell County has low taxes, as compared to Mecklenburg County which is almost double that of Iredell.
6) Continued projected development - new up and coming projects