I like your approach - identifying technically challenging sections and dedicating more of your practice time to them makes a lot of sense.
Two things I would add:
The first thing I do is to mark the various sections of the piece and then analyze the piece harmonically, either section by section as I learn them if it's a long piece, or the entire piece if it's short. By harmonic analysis I mean Roman numeral analysis, sometimes circling non-chord tones, and marking sequences and things like circle-of-fifths progressions. If I run up against a section that I can't figure out with RNA, I simply identify each chord (all of this is written in the score) - sometimes after doing so I can then figure out the logic behind the progression. I regard this as one of the most effective methods to make the learning process efficient. Once this is done, I no longer see the piece as being made up of hundreds of individual notes, but a far less amount of logical groups of notes, often in logical progressions. This makes both learning the piece and memorizing it much, much faster and easier.
The second thing I want to add is that mastering technically challenging passages often requires not just repetition, but the use of specific practice techniques, i.e. practicing in rhythms, practicing backwards (last note, then last two, then last three, etc.), practicing with eyes closed, practicing accenting certain notes or fingers that are weak, practicing jumps with techniques specifically designed to deal with them, etc., etc. Identifying the best practice techniques for specific passages will also add greatly to practice efficiency.