How do make it so the area in the circle is not punched, and does not look distorted from certain angles?
Just a slight change in topology fixes a lot of it:
(yours in blue, mine green)
- Get the pole, (the 5-pointed vertex) off the angled edge, and on to a safe flat area, where it doesn't affect normal interpolation.
- Put a holding loop in the front-to-back axis, and another loop on the flat, around the frame
- Spread the curve-defining loops either side of the corner more evenly - in this case, they work better straightened out, I think.
When cutting sharp concave insets, corners, the secondary holding loops at a little distance, (like the one furthest to the left in the green topology) become quite important to keep the frame edges straight, and prevent new Catmull-Clark generated faces derived from large faces close to the corner 'leapfrogging': cutting the corner ahead of faces closer to it.
Maybe further improvements could be made by adding a couple of edge loops to isolate the frame from the flat on the front.. (you could afford the polygons, I also reduced the Subdiv. from 5 to 2. :)
GG to slide a loop, followed by E to make the loop parallel to the next loop on one side, and F to flip which side, is a very quick way to straighten existing loops, try out variations, as is K (knife) followed by C constrain to one of the 45 degree angles , followed by Z to cut through the object: also handy when making repairs like this.