So I guess my performance impact comes down to the following
Since your question is about performance I advise you to start using performance tools that you already have at your disposal to dig into this problem. This way your guess will be more precise or better yet: you won't have to guess at all.
Display an Actual Execution Plan
SET STATISTICS TIME (Transact-SQL)
SET STATISTICS IO (Transact-SQL)
If after using these tools you are not able to figure out your answer, update your questions adding their result plus the function code and we'll try to help you further.
However, do you know if anything I can do in the group by part of the query to reduce the delays?
Without your actual code it's not possible to help very much.
DoesIs this function being callcalled twice because I have it in the select and the group by portion of my query?
It can be verified on the execuion plan.