The FromBinary method takes a long value that is created using the ToBinary method. It contains the Kind and Ticks components, and this is not what a database timestamp contains.
Using BitConverter to get the long value is correct, but then you have to take the time origin for the time stamp and add the long value as the correct unit. Assuming it's a timestamp from a MySQL database, IIRC it's the number of milliseconds from 1980-01-01:
byte[] byteValue = BitConverter.GetBytes(DateTime.Now.Ticks);
long longVar = BitConverter.ToInt64(byteValue, 0);
DateTime dateTimeVar = new DateTime(longVar);