Can someone explain to me if this method is considered safe,
It absolutely is not safe. It is causing "heap corruption" which is one of the worst kinds of bugs because it is so very hard to find.
and possibly tell me why I'm not getting stack errors when trying to overload the array?
You're not getting stack errors because your array isn't on the stack. It's on the heap. What's happening is that you are writing to unallocated memory which may or may not be used by other areas of your program.
So by stepping out of bounds of your array like this, you might be "trashing" other variables in your program. This can lead to very strange bugs like variables just having their values magically changed. Or, the memory you're trashing might not be used... in which case you won't be able to notice anything.
But the uncertainty here is exactly why these kinds of bugs are so dangerous and hard to find. Your program might run fine 95% of the time... but then might freak out and do insane things or flat out explode that last 5% of the time. There's no way to know what's going to happen.