You should NEVER add up Users numbers -- the result will likely include double-counting since Users can have multiple sessions and each session could have different parameters in any dimension you include (like ga:month). Simple example: 1 user visits in month 1, 2 and 3. Total is 3, but there is actually only 1 user. If you query Users for months 1-3 WITHOUT the ga:month dimension, the number would be 1, which is correct.
Next anomaly occurs at midnight -- if a session cross midnight, the user is counted in both days, but the session and some of the parameters that go with it may only be counted in the first period. You may end up with users that do not have a device category, or they do and they are double-counted.