I am currently working as an intern (with a good pay).
I have had trouble on my project, and took more time than what was expected of me to find what was wrong with a part of it. Now the deadline is coming, and I know I can't make it. Since the internship is almost over (2 weeks left), and I'm not studying in the same city, I can't continue working for this company after it is done.
I am not supposed to work more than X hours per week, and I am not entitled to any sort of overtime. On the other hand, the schedule is flexible, so it is possible to work more hours on certains days and fewer on other, as long as we do X hours a week. In that case, I could work about 5-6 extra hours while still staying withing the allowed work hours, before that deadline.
I care a lot more about making a good impression on my employers, so that I can either get hired there after I'm done with school, or at least get a decent recommendation, than I care about the money. I wouldn't mind at all working those extra hours and not saying anything, so essentially doing those hours without pay.
My main question is: Are there are downsides, like breaking some sort of law (I am in Canada), to doing this unpaid overtime without saying anything, to make the deadline? On the other hand, how bad would it be for me if I failed to do it on time, when talking about recommendation letters and resumes?
They originally thought this project would take 2 days for a full time employee, so they gave me a week to do it. Since I couldn't finish, they gave me an extra week, but mentioned that this was the longest they could give me, because after that my manager (who has to see the project to give his ok) will leave for some time, and we probably won't see each other before the end of my intership.
I know I'm a lot behind schedule, and I am fully accepting that it is my fault. I didn't know the programming language very well, so ran into many unexpected problems that I didn't solve fast enough.