Yep. More looping involved here.

I know this is probably not the best way to do this, but hey, it worked!

Code:
Option Explicit

Public Sub ArrayDifference(ByRef Arr1() As String, _
                           ByRef Arr2() As String, _
                           ByRef NewArr() As String)
' Compares the first two arrays passed and places values
' not found in either array into NewArr()
' from the difference of the two arrays.
' NewArr() Parameter should be empty when calling this procedure.
    Dim i As Long, j As Long, k As Long, m As Long
    Dim blnExists As Boolean, blnInNewArr As Boolean
    
    ReDim NewArr(0)
    
    ' Loop through Arr1 and check in Arr2
    For i = LBound(Arr1()) To UBound(Arr1())
        For j = LBound(Arr2()) To UBound(Arr2())
            If Arr1(i) = Arr2(j) Then
                blnExists = True
                Exit For
            End If
        Next j
        
        ' If not Arr1(i) not found in Arr2 then start
        ' to add to NewArr
        If blnExists = False Then
            ' Check if already exists in NewArr()
            For k = LBound(NewArr()) To UBound(NewArr())
                ' If already exists in NewArr then exit for
                If NewArr(k) = Arr1(i) Then
                    blnInNewArr = True
                    Exit For
                End If
            Next k
            ' If Arr1(i) does not exist in NewArr then add it
            If blnInNewArr = False Then
                ReDim Preserve NewArr(m)
                NewArr(m) = Arr1(i)
                m = m + 1
            End If
        End If
        ' Reset booleans
        blnExists = False
        blnInNewArr = False
    Next i  ' For i = LBound(Arr1()) To UBound(Arr1())
    
    
    ' Now Loop through Arr2 and check in Arr1 (just the reverse of before)
    For i = LBound(Arr2()) To UBound(Arr2())
        For j = LBound(Arr1()) To UBound(Arr1())
            If Arr2(i) = Arr1(j) Then
                blnExists = True
                Exit For
            End If
        Next j
        
        ' If not Arr2(i) not found in Arr1 then start
        ' to add to NewArr
        If blnExists = False Then
            ' Check if already exists in NewArr()
            For k = LBound(NewArr()) To UBound(NewArr())
                ' If already exists in NewArr then exit for
                If NewArr(k) = Arr2(i) Then
                    blnInNewArr = True
                    Exit For
                End If
            Next k
            ' If Arr2(i) does not exist in NewArr then add it
            If blnInNewArr = False Then
                ReDim Preserve NewArr(m)
                NewArr(m) = Arr2(i)
                m = m + 1
            End If
        End If
        ' Reset booleans
        blnExists = False
        blnInNewArr = False
    Next i  ' For i = LBound(Arr2()) To UBound(Arr2())
End Sub

Public Sub TestMeOutAgain()
    
    Dim Arr1(0 To 4) As String
    Dim Arr2(0 To 3) As String
    Dim NewArr() As String
    
    Dim i As Long
    
    Arr1(0) = "Badger"
    Arr1(1) = "Wombat"
    Arr1(2) = "Monkey"
    Arr1(3) = "Dog"
    Arr1(4) = "Cow"
    
    Arr2(0) = "Cow"
    Arr2(1) = "Dog"
    Arr2(2) = "Cat"
    Arr2(3) = "Wow! writing these arrays takes too long lol"
        
    Call ArrayDifference(Arr1(), Arr2(), NewArr())

    ' Show results
    For i = LBound(NewArr()) To UBound(NewArr())
        Debug.Print NewArr(i)
    Next i
End Sub