Don't feel bad or get too frustrated, just keep plugging away and ask when you need help. Your problem may not seem that complicated, but anything involving multi-dimensional hashes is beyond what I'd consider beginner-level.
When I started learning Perl 20 years ago, it was with a book called something like Learn Perl in 21 Days; and I already had some experience with C, awk, sed, and shell programming; but I probably still wasn't doing multi-level hashes in 1.5 weeks. It seems like people get thrown into the deep end a lot more these days -- maybe due to bosses not knowing what's hard and what's easy and not wanting to give people the proper time for training in the age of outsourcing -- so they don't get to follow a more natural learning curve. You're doing fine.
Available for small or large Perl jobs and *nix system administration; see my home node.