This doesn’t seem to be a bug. In the RFC specifications, there isn’t an obvious way to define all day events, and, therefore, different companies implement them in a slightly different way.
There is a solution that seems to work on all the major email providers (Google, Apple and Microsoft), which is to only have a DTSTART;VALUE=DATE:
I edited the .ics and it worked on outlook + apple calendar. Can we pass that to the Devs?