Here's another optimal solution, obtained via integer linear programming. Make these presses:
\begin{matrix} 0 &0 &1 &0 \\ 8 &5 &0 &3 \\ 0 &1 &6 &2 \\ 0 &0 &1 &0 \end{matrix}
To get these values:
\begin{matrix} 8 &6 &1 &4 \\ 13 &14 &15 &5 \\ 9 &12 &10 &11 \\ 0 &2 &7 &3 \end{matrix}
By request, here's the ILP formulation I used. For each cell $(i,j)$, let $$N_{ij} = \{(i_2,j_2): |i-i_2| + |j-j_2| \le 1\}$$ be the neighborhood of the cell.
For each cell $(i,j)$, let nonnegative integer decision variable $x_{ij}$ represent the number of times to press the cell.
For each cell $(i,j)$ and value $k\in\{0,\dots,M\}$, let binary decision variable $y_{ijk}$ indicate whether cell $(i,j)$ takes value $k$.
The problem is to minimize $\sum_{i,j} x_{ij}$ subject to
\begin{align}
\sum_k y_{ijk} &= 1 &&\text{for all $i,j$} \\
\sum_{i,j} y_{ijk} &\le 1 &&\text{for all $k$} \\
\sum_{(i_2,j_2) \in N_{ij}} x_{i_2,j_2} &= \sum_k k y_{ijk} &&\text{for all $i,j$}
\end{align}