Your friend is clearly trying to acknowledge that it came from a good place but, for her, it is not the comfort you intended and shut it down now before you send any other well meaning gifts. There is no easy way to say it, especially if you don't want to hurt the gift givers feelings as everything can be taken as a judgement, even if it isn't meant as one, it's just meant as a neutral statement to state the facts of the situation.
She knows you meant it kindly, she knows you didn't mean to offend, she knows you would never upset her intentionally but ultimately your action caused upset and she wanted to stop it happening again by speaking as clearly, but politely, as possible.
It may be the delivery of it that went wrong - it sounds like a lovely gift but it is something I would have saved for an anniversary or another special time and also would be sure to hand deliver it so I could "prewarn" her what it was, I wouldn't just send it through the post for her to open without warning. "Lovely friend, I just wanted you to know I was thinking of you and wanted to do something practical so I put together a little keepsake in memory of your BFF. I understand if you're not ready to open it now, so I will leave it with you to open when you feel able to, whether that's next week, next month, next year or never at all, it will be ready when you are"