In the kind of society we live in, and how English has changed over the years, I heard people say things like this a lot. It may not be grammatically correct, but it is natural in a lot of places in the US.
To have an off day is not the same as to have a day off. An off day is one when things are not going well for you. A day off is a day free from your normal responsibilities, job or studies. Ex. Today I woke up late, missed my bus, spilled coffee on my best blouse, and then I couldn't find my keys; I'm having an off day. Compare this to: I have the day off to go to my cousin's wedding.