It seems, though, that I'm doing something wrong: I'm getting negative volumes in my depth data after a while.
Actually the negative values are cancelled orders.
Of course. So to keep my copy of the "order book" synced, I add that negative value at the given price and should get 0, or (if some other order at the same price still exitsts) some positive value, but never a negative value, which happens to me.