There are multiple internal forms of `x / 2`.  I ran into the same problem here (with `1/4`):  
[Using Hold correctly with Simplify and ComplexityFunction][1]

This appears to work in all cases:

    MakeBoxes[expr_ / 2 | Rational[1, 2] expr_, fmt_] := 
      FractionBox[MakeBoxes[expr, fmt], "2"]

![Mathematica graphics](https://i.sstatic.net/rS6T8.png)

You can better see what is going on with `FullForm`:

    HoldForm @ FullForm[expr_/2]
    HoldForm @ FullForm[Rational[1, 2]*expr_]

>     Times[Pattern[expr,Blank[]],Power[2,-1]]

>     Times[Rational[1,2],Pattern[expr,Blank[]]]

You need to cover both the `Power[2,-1]` and `Rational[1, 2]` cases with your pattern.




  [1]: http://mathematica.stackexchange.com/a/18149/121