I can not trust (yet) in the Advanced Digitizing panel as a CAD tool.  

I take all possible precautions, drawing near the origin of coordinates of my custom CRS, all measures setted to planimetric, same CRS for the project and the layer, also without reprojecting *on-the-fly* (without project CRS), and when I want to draw a line of 20 meters perpendicular to another, it is labeled, i.e. 20.0000000000145 meters. The difference varies according to the angles I use, also varies if I am not near the origin of coordinates, wich makes me doubt about the planimetric concept.  

In the update of this answer: https://gis.stackexchange.com/questions/309683/deleting-all-lines-not-perpendicular-to-another-line-layer-using-qgis/309697#309697, I found that I could not select two perpendicular lines when they were digitized as perpendicular with the Advanced Digitizing panel, until I round the azimuths by 5 decimal places.  

About the circles, must be digitized in a compatible with curves data provider. Temporary scratch layer accepts compound curves, so it is a good option. But then the snap tool does not find the intersection. Your method of the *Lines intersections* tool seems to me a good approach.  

When the snap tool finds the intersection within two curves, they are not such thing.

So, the answer is:  

If you are fine with the tolerances of the Advanced Digitizing tool for the angles, distances, and/or coordinates, just draw the circles in a temporary scratch layer, find the *Line intersections* and snap to that points.