OP, you continue to insist that 75% attendance is good, and that your work was great, and the sad truth is that they clearly didn't agree. For them to effectively fire you, when you were working for free, strongly suggests that your work was not all that great, or they found you hard to deal with, or that it WAS inconvenient when you didn't show up when you should have.
And, though you say there was no expectation on how much you'd be there, you have indicated that you did know when it had been arranged that you'd be there, and you have not argued that 75% had no basis (which would be the case if there had been no real plan on how much you'd be there).
If it was me, I'd be trying to work out why I was so unpopular that I'd been fired when I was working for free. There is no way that, having gone to the effort of doing that, they could be expected to recommend you for employment - can you not see that? Any honest reference would have to say, 'we didn't want her help, even when it was free', which would make you less employable than no reference.
I'm sorry if this sounds harsh, but you do need to wake up to the reality, and stop expecting anything further from this organization. It went badly wrong, work out what you need to do and to change, to become potentially employable.