Largely, it's just a matter of being polite; in Japanese society, using a person's given name (technically not first name, since Japanese names are more originally ordered family name -> given name; i.e., the FMC here is Haimiya Mio) implies a certain level of closeness.
In the West, it'd be akin to calling someone by a nickname, especially among opposite gender pairings; for instance (and I apologize for assuming a male perspective here), let's say you have a classmate named Victoria, who you don't really know and only ever really speak to in passing. What kind of reaction do you think you'd get if you just randomly came up to her one day and started addressing her as "Vicky"?
It's essentially the same thing with given names in Japan, so you don't use them unless the person allows it; manga and anime tend to exaggerate the more romantic connotations of it because, ya know, high school rom coms.