Shenbagamoorthy,
Based on my reading of your post, your logic seems sound, the agent should get the Queue A call. I think there might be an issue with "skills" and "queues". In your post, you indicate the "Skill proficiency Queue A is level 5". Queues are just assigned to agents, skills actually have proficiency ratings.
I would remove the skills from the agents as a test. The agent should get the oldest call if the queues are set up the same. If this works then there may be an issues with setting the skills in the call flow.
As another test, you might want to copy one of the queues and try it with an exact copy of the queue. This would verify that the queues are identical.
Hope this helps.
Bill
------------------------------
William Goslin
American Customer Care, Inc.
------------------------------