Вы перезаписываете переменную status
совершенно новым объектом, вынимаете объект из базы данных из области видимости, но фактически не модифицируете объект, который присоединен к контексту, а это то, что ты захочешь сделать.
Единственный способ, которым я могу думать над головой, - это использовать отражение, чтобы прочитать все свойства типа и присвоить значения исходному объекту на основе нового, что-то вроде:
foreach (var prop in typeof(TEntity).GetProperties())
{
prop.SetValue(status, prop.GetValue(entity, null), null);
}