Seller provided tracking number way too late
So, I ordered a microscope from Ohio on April 29. The estimated delivery time is May 13 - May 22. The seller provided a tracking number today, on May 22. I've been sending him messages, he wasn't replying most of the time. One time he told me to give him a few hours to check the storage, and didn't send me a message after. On the next day I sent him a message again, no reply. The day after that I had to message him twice before he replied saying that he's apologizing and will try to fix it as soon as possible, it was May 13, two weeks after I paid, and still no tracking number. I told him that that's ok, and I can wait. Now it's May 22, and only today I got the number. The email I got from eBay says that the seller is packing my order, almost a month after I've paid. The email I got from eBay says that the seller is packing my order.
When I told him I could wait I didn't mean another 9 days just for a tracking number, that's way too long, I thought he will fix it a day or a few after the message, like come-on, it's just a tracking number I'm waiting for. Now I don't really need it anymore.
Is it okay to cancel the order tomorrow? It'll be a day after the final shipment date. Will eBay approve the money back process since the item is not even close to be delivered to me after do much time?
Sorry for making this too long, just wanted to cover all the details.