The fact that there is a limit to the number of items you can have representing ID's in a /did command is one of (if not the main) reason Khaled added the option of being able to use ranges.
Code:
var %edit = 12,19,20-22,31,64,65,67-69,73-75,78-80,102-104,120-126,166,169,174,183,186,188,367,368,800,802,805,809,810,813,821,823,825,827,838,841,842,849,851,852,857,860,868,873,876,877,899,708,710,713,721,724,729,784,785,788,901,902,914,916,918,920,923-925,940,954,960,967,274,287,502,505,506,511,512,516,517,520,547,548,559,561,565,426,429,372,608,609,610
did -rb %d %edit

Note: If that still gives you trouble, then split the list of ID's into smaller sections and use a /did for each section
Code:
var %edit = 12,19,20-22,31,64,65,67-69,73-75,78-80,102-104,120-126,166,169,174,183,186,188,367,368,800,802,805,809,810,813,821,823,825,827,838,841,842,849,851,852,857,860,868,873,876,877,899
did -rb %d %edit
%edit = 708,710,713,721,724,729,784,785,788,901,902,914,916,918,920,923-925,940,954,960,967,274,287,502,505,506,511,512,516,517,520,547,548,559,561,565,426,429,372,608,609,610
did -rb %d %edit


In regards to why it cleared 85, in spite of the fact that 85 isn't in the list, You do have 851, 852 and 857 in there, and if the limit for the list of ID's got the 85 of 851 then it would clear 85 (although why it left it enabled is a puzzler)

Note: You must have mIRC 6.17 or higher to use the ranges.
If you don't have 6.17 or higher, I suggest you upgrade, or use something similar to my second suggestion, which doesn't require the ranges.

Additionally, remember that variables have a limit of about 950 characters including the variable name, the = sign and the spaces between the variable name, the = sign, and the assigned value.