I think the "Invalid Int" problem is that ParseInt regards the number as positive unless it is signed so your hex string represents a positive number that is too large to be accommodated by a signed integer.
"FF000060" should be a negative number when represented as a signed integer, 6291711 is 0x6000FF.
I'm struggling to find a neat way of doing what you want, the best I've come up with is this
Sub Activity_Resume
Dim C As String = "ff000060"
Dim b() As Byte
Dim bconv As ByteConverter
b = bconv.HexToBytes(C)
Dim col As Int
col =1
For i = 0 To b.Length -1
col = Bit.ShiftLeft(col, 8) + Bit.AND(b(i), 255)
Next
Activity.Color = col
End Sub