Maybe you should differently declare the workDur. figure out the number of frames you wish to have(i named it framesNumber) and try something like workDur = framesNumber*app.project.activeItem.frameDuration
Assuming a 25 fps comp (CC2014), even hard-coding 122 frames (122*myComp.frameDuration = 4.88 seconds) gives an unexpected result:
app.project.item(1).workAreaStart = 4.88;
// Result: 4.88000011444092 Manually typing "B" to set the workArea start in AE, brings it back to 4.88 seconds (when checking app.project.item(1).time).