This book specifies the difference as:
martyr for something: smb. who is made to suffer severely for a cause
martyr to something: smb. who is acutely inflicted by something
Oxford dictionary also tells us this:
(martyr to) a constant sufferer from (an ailment):
Other online dictionaries don't seem to explicitly specify a difference, though all example sentences for "martyr to" contain an ailment.
Yet, I've seen the usage "He/She is a martyr to his/her cause/country" a lot. In fact, google gives more hits to the "to" use than the "for" use.
martyr to his cause: 315,000 uses vs. martyr for his cause: 285,000 uses
martyr to his country: 371,000 vs. martyr for his country: 266,000 uses
So is there still a difference between the two in modern/current use? Is this a case of colloquial use being inconsistent with grammatically correct use? Is this a US vs UK issue? Help, please? Surprisingly google is not yielding even a single article discussing this usage.