When Client initiates its first HTTP request, pool member should be selected based on specific info in the HTTP URI, instead of the normal LB selection process. Ex, 'pool (Pool Name) member (IP) (Port)'.
The specific Info in URI which helps in above pool member selection is only available in the first HTTP request.

LTM is not inserting appropriate HTTP cookie in the response for the first request, when member selection is done with the following command Ex, 'pool (Pool Name) member (IP) (Port)' . As a result persistence fails for subsequent requests from the client.

Is there any way to address it other than going for custom persistence ?

Does any one have an iRule to encode the selected member <ip:80> in to the normal cookie format <xxxxxxxxx.xxxxx.0000> , so that this cookie can be inserted using iRules on HTTP Response?