Not sure if you've found your answer but I don't think VLD will do this. I believe that you'd either need to use hardware breakpoints (you don't get many) or use one of the bound checking tools such as DevPartner. I use the features of the debug heap to check if the guard bytes have been overwritten, but this is only really of help in a debug build.
<edit>
This page gives an indication of what I mean above plus an option for gflags to place each heap allocation with a guard page after. https://blogs.msdn.microsoft.com/webdav_101/2010/06/22/detecting-heap-corruption-using-gflags-and-dumps/
</edit>
<edit>
This page gives an indication of what I mean above plus an option for gflags to place each heap allocation with a guard page after. https://blogs.msdn.microsoft.com/webdav_101/2010/06/22/detecting-heap-corruption-using-gflags-and-dumps/
</edit>