The Ran in Pesachim writes that when a mitzvah can be done via shliach, the nusach ha'bracha is "al mitzvas...," but when it must be done personally the bracha starts "l...". Ran then asks why is it that the bracha on megilah is "al mikra megillah," but the bracha on shofar is "li'shmoa kol shofar?" In both cases there is a shliach tzibur doing something for us; in both cases we each listen. So why is it that when it comes to megillah the mitzvah is defined as **reading** the megillah, and the shliach tzibur is our agent, and therefore the bracha is "al...," but when it comes to shofar the mitzvah is defined as the act of listening which we do ourselves and therefore say the bracha "li'shmo'a..?"
Ran gives a complicated answer which is not so easy to understand (see Steipler in Pesachim). The Rosh (R"H 4:10) asks the same question. and quotes a straightforward resolution from the BaHa"G: the halacha is that if one blows shofar properly but does not hear the sound, e.g. one hears only an echo, one is not yotzei. The mitzvah is hearing the kol shofar, not merely blowing. Therefore, the bracha is "li'shmo'a." He doesn't spell it out, but what he seems to be implying is that when it comes to megillah it is reading which is critical, even if one does not hear the words coming out of one's mouth. Therefore, the bracha is "al mikra."
This answer of the BaHa"G may be l'shitaso of the BaHa"G's view we have been discussing earlier in this week (link1, link2). Recall that BaHa"G, based on the Tosefta, argues that men and women do not have the same chiyuv in megillah. Men are obligated in reading; women only in hearing the text read. Given this assumption, mikra megillah MUST be different than shofar. The chiyuv of megillah, unlike shofar, cannot be "li'shmo'a," because then there would be no way to distinguish the obligation of men from that of women.