Somewhat outside the box thinking...
Generate a master ramp synchronized to the input frequency, but amplitude "AGC'd" to be 1V peak by a controlled current source.
Replication of this same current into same value capacitor, but switched by the duty cycle, presents a peak voltage proportional to duty cycle... 1V = 100%, irrespective of frequency.
AGC method shown is a crude "quicky"... in actual practice corrections are by "dollop" ;-)
First used this scheme in the summer of 1968 when I was at Philco-Ford, Santa Clara, for an automotive inductive storage ignition system timing:
Turn on charging of inductor. When it reaches 5.5A go into regulation mode, holding 5.5A until firing.
System senses at firing time, was inductor into regulation already... delay timing by a dollop before beginning next charging cycle.
If inductor current was not yet at 5.5A, make timing a dollop earlier.
(Scheme minimizes/optimizes switch power dissipation.)
I used to scare my bosses (Bob Rutherford/John Welty) by driving (1968 Ford Thunderbird 429CID) up and down 101 with my legs crossed Yoga-style and drive only using the cruise control buttons up to 100 MPH, to see if I could out-run such a timing scheme... I couldn't ;-) ...Jim Thompson