I guess I will wade in here with my opinion that closed-loop, continuous feedback control is just plain difficult to do well, compared with other controls-related workload. The underlying theory, even with simplified models, requires somewhat advanced mathematics. Though, I will be quick to add that a complete understanding of the theory is not necessary for success in specific fields such as industrial process control, which is the context for the remainder of this comment.
With classical PID as a control strategy, you are dealing with an implementation step followed by a tuning step. The implementation is typically a hardware device (e.g., single-loop controller) or programming a PID function within a larger control system. There are many details that need to be correct if the PID is going to work well, such as input scaling, output scaling, update timing, etc. In most cases there is basically a correct set-up based on the devices involved and to some extent the process under control.
The real challenge comes with tuning. Part of this challenge is inherent in the problem, and part is "self-inflicted." Inherent challenges include the process itself: is it well-behaved (linear, time invariant), or difficult (high order, dead-time, time variant)? Also inherent is that PID gives you three tuning "knobs" and typically one response. As a result there is not necessarily one best answer to this optimization problem. For example, tuning for set point changes may not be optimal for disturbance rejection.
Some of the "self-inflicted" challenges are related to the fact that there are many different implementations of PID, and this will critically affect how you calculate or adjust tuning parameters. For example, if are you dealing with Proportional Band or Proportional Gain? Very important because having an inverse relationship, increasing PB is like decreasing PG. Similarly with integral gain or repeats/min, interacting or non-interacting gains. Much of this inconsistency comes from history of transition from analog to digital implementation, industry preferences, and manufacturer preferences; and is probably not going away any time soon.
Closer-to-home self-inflicted difficulty is the tweaking we may do to a (typically programmed) PID implementation. Adding features like digital filters can often be helpful, but misapplied may create (or hide) worse problems. Adding logic that "tweaks" the loop (e.g., clamping inputs), creates non-linearities that may end up doing more harm than good.
In my experience, if you get the controller set-up and configured correctly; then take some time to understand its specific PID flavor (equation), half the battle is over. From that point you can either tune by seat-of-the-pants if you have the intuition and experience, or do some basic open-loop model testing to get into the ballpark using various published tuning recommendations.