insertCMD.Parameters.AddWithValue("@ErrorScreenshot", SqlDbType.VarBinary).Value = DBNull.Value;
when I had that error, I was able to trace it to my table structure where I had defined different data types for nvarchar and varbinary for a common columns say 'X' in two tables.
here's my solution I used in the stored procedure where these tables were being referenced:
insert into tablename (X,Y,Z) values (convert(varbinary,@X),@Y,@Z)
let me know if this works