You can't cast an array of bytes to an Image at all - they are not even close to the same size in most cases!
Instead, you need to convert the byte array to a Memory stream, then construct the Image from that:
Dim bytes As [Byte]() = ds.Tables("tree").Rows(inc).Item(10)
Dim ms As New MemoryStream(bytes)
picPhoto.Image = Image.FromStream(ms)