You want to make sure CurrentAck is pointing to the collection of your acknowledgements. here's a better way to get the latest without the loop. Note the difference between the _Acknolwedgement user object below and the Acknowledgements collection, I changed the name here to help differentiate between the two.
LastAck = _Acknowledgement._Incident._ACKNOWLEDGEMENTS.Latest()
if LastAck != null:
CurrentAckUser = Incident.GetNamedObject("System.User", LastAck.User.Title)
return CurrentAckUser