Have you tried soaking it in OxyClean? I have had great sucess with it.
Also, there is this odd stain remover that I have found at the Dollar General. It is cheap. A friend told me about it and it has worked on several bad stains here. It is sort of pasty and you rub it on and let it sit before washing. The name is M30 stain remover.
Barb C