$scope.name = "<h1>John Doe</h1>"
The correct way would be:
$scope.name = 'John Doe';
I don't know why would you set html tags in your variables if you really really don't need to.
EDIT according to comment:
In the case you need to use html tags in your templates, please see this answer on SO: AngularJS : Insert HTML into view
I'm not going to duplicate the answer because it's explained very well in that answer.