DATETIMEVALUE() will set the time to Greenwich Mean Time (GMT), and then convert it to the time zone of the user viewing the record when it's displayed. See Using Date, Date/Time and Time Values in Formulas in the Salesforce Help for more information.
There is no way to determine a user's time zone in a formula. If all
your users are in the same time zone, you can adjust the time zone
difference by adding or subtracting the time difference between the
users' time zone and GMT to your converted values. However, since time
zones can be affected by Daylight Saving Time, and the start and end
dates for DST are different each year, this is difficult to manage in
a formula. We recommend using Apex for transactions that require
converting between Date/Time and Text or Date values.
So, if you meet the criteria of not having to worry about DST and having all your users in the same time zone, you may be able to modify your formula so that the time accommodates the offset to GMT. Otherwise, you're better off using Apex for this.