For every nonempty closed subset $A\subseteq [-M,M]^n$ there is a sequence of finite sets $F_n\subseteq [-M,M]^n$ such that $d_H(F_n,A)\to 0$ where $d_H$ is the Hausdorff metric. (Proof: let $F_n$ be a finite $(1/n)$-net in $A$, which exists by compactness.) So the result is not true as you conjectured. For another example, take a subset $A$ with smooth but wiggly boundary, so that the surface area of $\partial A$ is large. Then the $\epsilon$-neighborhood of $A$ will have the volume substantially larger than the volume of $A$, compared to $\epsilon$.
The second example suggests what to do. Instead of imposing a bound on diameter (which is what you did), impose a bound on surface area. The convenient notion of surface area to use here is the Minkowski content
$$\lambda(\partial A)=\liminf_{\delta\to 0}\delta^{-1}(\mu(A_\delta)-\mu(A))\tag1$$ where $A_\delta$ is the closed $\delta$ neighborhood of $A$ and $\mu$ is the $n$-dimensional Lebesgue measure. For not-too-weird sets this is the same as the area of $\partial A$.
Claim. Let $A$ be a nonempty compact subset of $\mathbb R^n$ with $\mu(A)>0$. Then for all $\delta>0$
$$\mu(A_\delta)\le \left(1+\delta\,\frac{\lambda(\partial A)}{n\,\mu(A)}\right)^n\mu(A)\tag2$$
You can use (2) to estimate $|\mu(A)-\mu(B)|$, because $A\subseteq B_\delta$ and $B\subseteq A_\delta$ when $\delta$ is the Hausdorff distance between $A$ and $B$.
Proof. Pick a number $\lambda'>\lambda(\partial A)$. Consider the function
$$f(t)=(\mu(A_\delta)/\mu(A))^{1/n},\quad t\ge 0$$
By the Brunn-Minkowski theorem $f$ is concave.
Note that $f(0)=1$. According to (1), there exists $\delta\in (0,d)$ such that $\mu(A_\delta)<\mu(A)+\delta\lambda'$, and therefore
$$f(\delta)\le (1+\delta\lambda'/\mu(A))^{1/n}\le 1+\frac{\delta\lambda'}{n\,\mu(A) } \tag3$$
Note that (3) also holds with $\delta=0$. Since the right-hand side of (3) is an affine function, it majorizes the concave function $f $ on $[\delta,\infty)$. In particular,
$$f(d) \le 1+\frac{d\, \lambda'}{n\,\mu(A) } \tag4$$
which proves (2) because $\lambda'>\lambda(\partial A)$ was arbitrary. $\Box$
The appearance of $\mu(A)$ in the denominator in (2) is unpleasant. A hackish way around this is to apply (2) to the disjoint union of $A$ and a closed ball of radius $r$ (to be chosen). Denoting this union by $A'$, we have $\mu(A')=\mu(A)+\mu(B_r)$ and $\lambda(\partial A')=\lambda(\partial A)+\lambda(\partial B_r)$. Plug this into (2) and minimize with respect to $r$... or simply take $r=\delta$ if minimization is hard. There ought to be a canonical, sharp, estimate
$$\mu(A_\delta)\le F(\mu(A),\lambda(\partial A),\delta) \tag{?}$$ out there, but I do not remember seeing such a thing.