Using multiple secret keys
You elaborated that your goal is to make it possible to decrypt a message successfully "only when the device is in a specific location".

Great goal, but yeah, well, the particular scheme you describe in your question ain't gonna work. Someone who is not physically at the specific location, but who knows where the specific location is, can still infer the key and decrypt the ciphertext.  This is a fundamental flaw, and it's not something you can fix by sprinkling on a KDF or multiple keys.  It doesn't matter how many keys you have or how you combine them.  Sorry to break it to you, but your scheme is not secure, and it cannot be easily repaired.  You're asking the wrong question: your whole approach is flawed.

There's been academic work on this sort of problem (e.g., by Dorothy Denning), but it's a much harder problem than you seem to realize, and the resulting schemes look very different.  One has to find some source of unpredictable entropy that is visible to anyone who is at the specified location at the specified time, but that is not known or predictable to anyone else.  That's very challenging.

For the state of the art in this area, see the following papers:


Location-Based Authentication: Grounding Cyberspace for Better Security.  Dorothy Denning.  Computer Fraud &amp; Security, Feb. 1996. 
On location-restricted services. Eran Gabber and Avishai Wool. IEEE Networks, 13(6):44-52, November/December 1999. 


There may be more other work; I recommend that you do a literature search to check.