Stack corruption may occur by a 10 digit integer value because there is no space for terminating null character. wcslen(dest); call may cause access violation on uninitialized dest buffer while looking for a terminating null to determine the end of string.
My recommendations have been stated as comment lines below.
void PrepTextOut(wchar_t* str, wchar_t* dest, size_t destSize, int value)
{
wchar_t cNum[16];
size_t cNumSize = sizeof(cNum) / sizeof(cNum[0]);
_itow_s(value, cNum, cNumSize, 10);
wcscpy_s(dest, destSize, str);
wcscat_s(dest, destSize, cNum);
}