>   1) Add itself to the user's custom-theme-load-path

Yes. The code is a little tricky, so look into how other themes do it.

>   2) Load itself via load-theme

Absolutely not. Users should be able to have multiple themes installed without them all turning on simultaneously.

I do agree with need a more intuitive theming experience for new users, but that's a whole other topic.