It's a datetime picker, and you are using DATETIME columns in your DB.
So why are you using a text version of the DTP value?
sc.Parameters.AddWithValue("@From", dtpFrom.Text);
sc.Parameters.AddWithValue("@To", dtpTo.Text);
When you do that, you convert a DateTime value to a string, pass that to the DB engine which tries to convert it back to a DATETIME object, and gets it wrong.
Pass the DateTime value itself directly and no conversions need to happen, so it's more efficient, and it should work:
sc.Parameters.AddWithValue("@From", dtpFrom.Value);
sc.Parameters.AddWithValue("@To", dtpTo.Value);
Oh, and "Date" is a reserved word in many DB engines, so it probably need to be quoted when you use it, or better changed to a more meaningful name: "ExpiryDate" maybe, or "InsertDate" perhaps.