The boolean seems to work great on one side of the model, but on all the other sides some holes don't get cut. I have tried applying the modifiers. Using the spin tool instead of Array. Having each side be an individual object and using a boolean modifier for each one. They all seem to have the same result, any thoughts?
Maybe your model isn't centered (from top view). Also make sure the Cursor is at the world origin (0, 0, 0).