Duration estimation is not exactly a linear problem; the model is not linear (additive) in the to-be-estimated duration parameter. Thus it is not possible to "rotate" 3dDeconvolve's duration modulation option to do what you want. The DM option is intended for the case when you know the duration of each event (e.g., measure how long it takes the subject to respond).
The program 3dNLfim could do what you want, if you had a model function .c file that provided the nonlinear model. Do you want to estimate average duration for each stimulus class, or individual duration for each stimulus separately (and then average)? These are two somewhat different approaches, and which is better isn't obvious, considering the general crappiness of FMRI data time series.
If you care to elaborate your problem a little more, I might consider generating a 3dNLfim model function for duration estimation using the dmBLOCK type of function.